char foo[3] = { 97, 98, 97 };
printf("%d",sizeof(foo));
После отладки он дает мне результат 3.Почему не размер моего массива 4 байта C
Почему это не результат 4?
foo[3]
состоит из 4 символов 0,1,2,3 вправо?
Размер символа 1 байт, так почему же нет foo 4 байта?
Почему нет результата 1?
Когда я звоню foo
, это то же самое, что и звонок &foo[0]
. Так как я знаю, когда я призываю весь массив и когда для первого символа? как здесь sizeof(foo)
Три символа: 'foo [0], foo [1], foo [2]'. Вы просили 3, у вас есть 3. –
Неверно. 'foo' состоит из 3 символов. – DyZ
Где в мире вы получили '0, 1, 2, 3' из в' foo [3] '? –