unsigned long long
コマンドラインからの入力として数値のリストを受け入れる C プログラムを作成しています。それらを解析して配列に格納するにはどうすればよいですか? 参考になりそうだstrtoull
けど、どうやって使うの?
これが私のコードです:
#include<stdio.h>
main (int argc, char *argv[])
{
unsigned long long M[1000];
int i;
printf("length: %d\n", argc - 1);
for(i = 1; i < argc; i++) {
M[i] = strtoull(argv[i], NULL, 10);
printf("%llu\n", M[i]);
}
return 0;
}
パラメータが小さい場合は機能しますが、巨大な数 (たとえば、123456789012345) を入力すると、正しく解析されません。私は何を間違っていますか?