![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 11.01.2018
Сообщений: 49
|
![]()
Буквально два вопроса, можно ответить просто да/нет. Дело в том, что препод засыпал, а я не уверен прав ли он.
Структура в языке С представляет собой непрерывный участок памяти, размер которого равен произведению наибольшего размера и количество полей? (да/нет) Структура в языке С не может содержать поля типа "структура"? (да/нет) Сидел проверял размер структуры, ну действительно ведь произведению равен размер. Может, в Паскале размер структуры равен сумме всех полей, и из-за этого препод забыл? На первый я ответил "Да", на второй "Нет". Как правильно? |
![]() |
![]() |
![]() |
#2 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,829
|
![]()
Засыпал... Ха-ха...
Цитата:
Смотрим https://ideone.com/5wkKe6 три поля, большее размером 4. По вашему размер структуры 12, а программа упорно выдает 8... Смотрим https://ideone.com/I9nHqr Структура есть? - есть. Поле в ней типа структура есть? - есть. Компилится и работает? - да. Вывод - ... Последний раз редактировалось p51x; 30.05.2018 в 10:21. |
|
![]() |
![]() |
![]() |
#3 |
Программист
Участник клуба
Регистрация: 23.06.2009
Сообщений: 1,772
|
![]()
Что Вы там проверяли - непонятно
Код:
Код:
|
![]() |
![]() |
![]() |
#4 | |
Пользователь
Регистрация: 11.01.2018
Сообщений: 49
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,829
|
![]()
1. По секрету - у вас С++. Это немного другое.
2. Уж на первом курсе при изучении программирования отмазываться отговорками типа нам не рассказали глупо. Прочитайте в документации, что это за типы. 3. И? Какие выводы вы сделали из своего теста? Что показали результаты? |
![]() |
![]() |
![]() |
#6 | |
Пользователь
Регистрация: 11.01.2018
Сообщений: 49
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 11.01.2018
Сообщений: 49
|
![]()
Что в С++ размер структуры равен произведению наибольшего размера поля и количества полей. И что структуру может содержать поле "структура".
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,829
|
![]()
1 + 1 + 1 + 4 = 7 и +1 от компилятора для выравнивания
Вам уже два примера привели, что это не так. Попераставляйте поля в своем примере, заведите больше переменных с разным размером. |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 11.01.2018
Сообщений: 49
|
![]()
Попереставлял, попроверял... Моя жизнь никогда не станет прежней, я свято верил, что размер равен произведению, а оказывается компилятор просто добавляет к сумме значения, чтобы результат был кратен максимальному полю...
|
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 11.01.2018
Сообщений: 49
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите с вопросами | alhon | Помощь студентам | 2 | 14.01.2016 22:06 |
Помогите с вопросами пожалуйста | Silensir111 | Помощь студентам | 0 | 20.11.2015 19:39 |
Помогите с вопросами | R@MZ[E]$ | Помощь студентам | 6 | 21.05.2009 17:51 |
Помогите с вопросами... | R@MZ[E]$ | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 21.05.2009 09:40 |