Я не уверен, что именно вы пытаетесь сделать, но если я правильно угадал, вы хотите, чтобы переменная pid_buff_ptr
содержала массив значений int
, а не массив значений int *
. 1004 *
Если это так, вам нужно изменить
#define FILL_BUFF_1 (int *)(0x01, 0x02)
#define FILL_BUFF_2 (int *)(0x03, 0x04)
до
#define FILL_BUFF_1 {0x01, 0x02}
#define FILL_BUFF_2 {0x03, 0x04}
Изменить следующее:
int *pid_buff_ptr[2] = {LOOK_UP};
до
int pid_buff_ptr[][2] = {LOOK_UP};
Для печати вы должны использовать что-то вроде:
printf("%d ", pid_buff_ptr[0][1]);
Конечно, я могу ошибаться.
Теперь, некоторые другие комментарии:
- Вам необходимо
#include <stdio.h>
перед использованием printf()
.
main()
возвращает int
.
- Поскольку
main()
возвращает int
, вы должны вернуть int
из него. Традиционно 0
означает успех.
- Я не знаю, что такое
_TCHAR
, но если это не псевдоним или #define
для char
, у вас могут быть проблемы.
Даже с учетом вышеприведенных изменений я не понимаю необходимости хитрости с препроцессором. Что именно вы пытаетесь сделать?