Я полагаю, очень похоже на стандартные массивы (то есть целочисленные массивы), когда вы передаете массив структур, вы должны передать размер массива вместе с ним. Однако что я еще не понимаю, так это то, что когда вы берете размер первого элемента структуры, вы получите 4 (то есть 4 байта в первом элементе?).
Теперь я передаю массив структур, который содержит только строки. Я проверяю размер одного элемента массива (помните, что это будет одна структура), я получаю что-то вроде 28, но после того, как я передал его в функцию (и да, переданный в функцию, я имею в виду, переданный по значению адрес адреса первый элемент в моем массиве), я получаю только 4.
Теперь я предполагаю, что sizeof получает первый элемент моей структуры в массиве. Итак, у меня есть мой массив myArray типа myStruct:
myStruct {
Имя строки
Строковый адрес
Строка почтовый индекс
}
Полагаю, sizeof смотрит на "имя"? Но я точно знаю, что длина имени не 4 байта, а 10.
На что конкретно смотрится размер? Как выглядит структура памяти массива структур?
Спасибо
Thomas