#ifdef
マクロを理解しようとしています。以下サンプルコード。
getval(int val)
{
if(val==0) {
#ifndef PKT
#define PKT
#endif
}
}
main() {
getval(0);
#ifdef PKT
printf("Packet\n");
#endif
}
Packet
に渡し1
ても出力が得られますgetval
。PKT
が定義されていないときに出力が得られるのはなぜval=1
ですか? ありがとう。