Дополнительный вопрос (1 балл): Предположим, мы используем 32-разрядные операционные системы Windows и C/C++. Пожалуйста, оцените SizeOf() для следующим образом (единица измерения: байт)Объяснение sizeof() с различными типами данных в C++
• char str[] = “Hello” ;
• char *p = str ;
• int n = 10;
Please calculate:
• sizeof (str) = __________
• sizeof (p) = __________
• sizeof (n) = __________
Здравствуйте все,
Я пытаюсь обернуть свой ум вокруг этого довольно фундаментальное понятие в C++. Я скажу вам, что я думаю, что правильные ответы - это увидеть, правильно ли я нахожусь на правильном пути. Для первого, sizeof (str), я считаю, что это всего 6 байт. Я заметил шаблон из других проблем, что к этим типам строк добавлен 1 байт. (5 букв +1). Мой вопрос: что это за «+1»? Что касается второго, это просто относится к размеру указателя, p, правильно? который всегда равен 4 байтам? Наконец, третий, я считаю, просто имеет в виду размер int, n. Из чего я знаю, что все ints имеют размер 4 байта правильно? Означает ли это, что все int имеют 4 байта, независимо от того, являются ли они 10 или 10000 или любым другим числом. Любая другая важная информация по этой теме также очень ценится и принимается с распростертыми объятиями! Благодаря!
Во-первых, 6. Последние два зависят от реализации. – Lingxi
Для 32-разрядных Windows оба указателя и указатели имеют 4 байта. – 1201ProgramAlarm