文字列配列の長さを求めるときに間違えたこと
文字列配列の長さを求めるときに間違いを犯したよ(>_<)
#include <stdio.h> int main() { char *t[] = { "C", "C++", "Perl", "Python", "Ruby", "Java", "Javascript" }; printf("size of array t = %d\n", sizeof(t)); return 0; }
これを実行すると
% a.out size of array t = 28
ってなった
正しくはこうしなきゃいけない
#include <stdio.h> int main() { char *t[] = { "C", "C++", "Perl", "Python", "Ruby", "Java", "Javascript" }; printf("size of array t = %d\n", sizeof(t) / sizeof(t[0])); return 0; }
これの結果は,
% a.out size of array t = 7