"int32 необъявленная" ошибка gcc
Я пытаюсь узнать меня некоторые C, и столкнулись с тем, что, вероятно, простая проблема. Я пытаюсь скомпилировать код, который содержит следующее объявление:
int32 count;
, это приводит к ошибке во время компиляции:
test.c:21: error: ‘int32’ undeclared (first use in this function)
есть ли конкретный параметр времени компиляции, который мне нужно установить для gcc или #include
директива, которая решит это?
p.s. Я работаю на Ubuntu Intrepid.
2 ответов
на int32
тип не является стандартным C-стандартным эквивалентом является #include <stdint.h>
и использовать int32_t
.
однако, как система POSIX, на Ubuntu plain int
(по крайней мере) 32 бит, поэтому вы можете просто использовать это.
размер ' int ' зависит от используемого компилятора. Для одной и той же целевой архитектуры разные компиляторы могут иметь разные размеры для 'int'. Это зависит от того, как они используют целевые функции. Например, Turbo C, работающий в windows, имеет размер " int " как 2 байта (его исполняемый файл DOS). В то время как Visual C дает размер " int " как 32 (Win32 исполняемый файл).
В общем, размером типа 'int' определяется размером слова в соответствии с целевой архитектурой. Размер слова отражается 1. Обработка размера арифметических операций. 2. Размер регистров общего назначения. 3. Размер адреса, используемого для обозначения местоположения.
однако в вашем случае вы неправильно используете ключевое слово 'типа int32' для типа данных. Проверить и исправить ключевое слово, используемое соответственно.