重複の可能性:
文字列を整数 C に変換する
コマンドargv [1]から受け取った数値を「int」に変換したかったのです。argv が文字列として格納されていることは知っていますが、それらから整数値を取得するにはどうすればよいですか。argv[1] = 10 と仮定します。
重複の可能性:
文字列を整数 C に変換する
コマンドargv [1]から受け取った数値を「int」に変換したかったのです。argv が文字列として格納されていることは知っていますが、それらから整数値を取得するにはどうすればよいですか。argv[1] = 10 と仮定します。
atoi()
C 標準ライブラリの関数を使用できます。
POSIX C ライブラリには、文字列を実際の数値に変換するさまざまな関数が含まれています。以下にいくつかの例を示します。
long some_long = strtol(argv[1], NULL, 10);
long long some_longlong = strtoll(argv[1], NULL, 10);
unsigned long some_unsigned_long = strtoul(argv[1], NULL, 10);
unsigned long long some_unsigned_longlong = strtoull(argv[1], NULL, 10);
浮動小数点値への変換用の関数もあります。
double some_double = strtod(argv[1], NULL);
float some_float = strtof(argv[1], NULL);
long double some_long_double = strtold(argv[1], NULL);
詳細については、こちらとその他の場所 (同じ Web ページの strtoul.html と strtod.html) を参照してください。