Articles of sizeof

Как вернуть размер указателя, который я выделил с помощью malloc?

См. Этот пример! int main( int argc, char ** argv ) { int *ptr = malloc(100 * sizeof (int)); printf(“sizeof(array) is %d bytes\n”, sizeof(ptr)); } Функция printf возвращает только 4 байта! Что случилось? Спасибо!!!

Количество бит в типе данных

У меня есть две задачи для назначения, одна возвращает количество бит в типе int на любой машине. Я думал, что буду писать свою функцию так: int CountIntBitsF() { int x = sizeof(int) / 8; return x; } Правильно ли это? Вторая часть – вернуть количество любых битов любого типа данных с макросом, а макрос можно […]

Как получить размер строки в байтах?

Как следует из названия, мой вопрос заключается в том, как получить размер строки в C Хорошо ли использовать sizeof если я объявил его (строку) в функции без malloc ? Или, если я объявил его указателем? Что делать, если я инициализировал его с помощью malloc ? Я хотел бы получить исчерпывающий ответ.

Увеличивает ли элемент гибкого массива размер структуры?

У меня есть следующий код: typedef struct { u32 count; u16 list[]; } message_t; … message_t* msg = (message_t*)buffer; msg->count = 2; msg->list[0] = 123; msg->list[1] = 456; size_t total_size = sizeof(*msg) + sizeof(msg->list[0]) * msg->count; send_msg( msg, total_size ); Проблемная линия – это строка с sizeofs. Я не уверен, что это правильный способ подсчета […]

Пожалуйста, объясните вывод sizeof ()

Я новичок в программировании c, и я пытаюсь понять функцию sizeof . Пожалуйста, помогите мне понять, как работает эта программа: #include main( ) { printf ( “\n%d %d %d”, sizeof ( ‘3’), sizeof ( “3” ), sizeof ( 3 ) ) ; } Я получаю вывод как 4 2 4 . Однако я не могу […]

Почему malloc указателя на структуру работает?

В коде, который я случайно использовал list* Head = malloc(sizeof(list*)); вместо правильного list* Head = malloc(sizeof(list)); для создания нового узла типа list но в дальнейшем он работал отлично. Поэтому мой вопрос, почему он работал правильно?

Почему размер отличается для разных указателей

#include #define R 10 #define C 20 int main() { int *p; int *p1[R]; int *p2[R][C]; printf(“%d %d %d”, sizeof(*p),sizeof(*p1),sizeof(*p2)); getchar(); return 0; } Почему вывод: 4 8 160 ? Почему размер p1 равен 8, а не 4?

Как работает оператор sizeof в C?

В этом нижеприведенном коде: #include int main(void) { printf(“%d”,sizeof(int)); return 0; } Когда компилируется на gcc (Ubuntu 4.8.4-2ubuntu1 ~ 14.04.3) компилятор 4.8.4, он дает предупреждение: Формат «% d» ожидает аргумент типа «int», но аргумент 2 имеет тип «long unsigned int» [-Wformat =] printf («% d», sizeof (int)); Почему я получаю это предупреждение? Является ли этот […]

почему sizeof (указатель) возвращает неправильное значение?

Возможный дубликат: Строковый литерал sizeof В моей среде windows7 mingw я пробовал это: char str[] = “hello”; Значение sizeof(str) равно 6, а не 4 или 8. Как это может произойти?

strlen иногда равен sizeof для строк с нулевым завершением

Я знаю, что strlen подсчитывает количество символов до (и исключает) нулевой символ ‘\0’ (или 0 ), и этот sizeof дает объем пространства, необходимый для хранения строки, включая нулевой символ, но меня путают с выходом моего кода. Вопрос: Я ожидаю, что результат strlen будет последовательно на 1 меньше результата sizeof потому что мои строки заканчиваются на […]

Intereting Posts
Как правильно семена mersenne twister RNG? Инициализация объектов макросами для целочисленных констант Почему эта программа C печатает странные символы на выходе? Низкоуровневая запись на C Получение значения мусора при печати матрицы в C Найти размер целочисленного массива, полученный как аргумент функции в c printf / fprintf максимальный размер согласно c99 Каким будет его выход и почему? Передача аргументов от C до 64-битной сборки Linux Как я могу вернуть более одного значения через функцию в C? Почему я работает, а также arr на C с более крупными типами данных? GTK + gcc: неопределенная ссылка на все функции gtk при связывании Возможно ли убить команду, запущенную с использованием системы api в C? Если нет альтернатив? Безопасно ли memcpy для динамической структуры хранилища? Получение отдельных кадров с использованием CV_CAP_PROP_POS_FRAMES в cvSetCaptureProperty