Я работаю с инфраструктурой Apple ScriptingBridge
и сгенерировал заголовочный файл для iTunes, который содержит несколько enum
, как это:
typedef enum {
iTunesESrcLibrary = 'kLib',
iTunesESrcIPod = 'kPod',
iTunesESrcAudioCD = 'kACD',
iTunesESrcMP3CD = 'kMCD',
iTunesESrcDevice = 'kDev',
iTunesESrcRadioTuner = 'kTun',
iTunesESrcSharedLibrary = 'kShd',
iTunesESrcUnknown = 'kUnk'
} iTunesESrc;
Я понял, что значения enum
должны быть целочисленными, но это определение, по-видимому, нарушает это правило. Кроме того, кажется, что обработка этих значений enum
как целых чисел (например, в NSPredicate
) не делает правильные вещи.
Я добавил объявление enum
выше в файл C с пустой функцией main
и скомпилирован с помощью i686-apple-darwin9-gcc-4.0.1
. Таким образом, хотя эти типы enum
могут не соответствовать стандарту C (как указывает Параппа ниже), они, по крайней мере, скомпилированы каким-либо типом по gcc.
Итак, что это за тип и как его использовать, например, в строке формата?