C言語を使っていて、躓いたことがある。もちろん、ポインタも難しい論点だが、いくら検索しても出てこない、ほかに言及のないことについて悩んだ。
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
char ch = ‘a’;
printf(“%d\n”, ch);
return 0;
}
97 が出力される。
しかし、次を実行すると、そうはいかない。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
printf(“%c\n”, argv[1]);
return 0;
}
出力なし
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
char ch = (char)argv[1];
printf(“%c\n”, ch);
return 0;
}
./a.out a
97が出力される。