【C言語】整数値の文字列を整数型に変換する方法!

こんにちは!Takuya.B(@TB_IQ)です。

先日、C言語のコマンドライン引数についての記事を書きました。

このコマンドライン引数は文字列です。しかし、コマンドライン引数に入力した数値をプログラム中で整数として扱いたい人もいることでしょう。

そこで今日は、C言語で整数値を持つ文字列を整数型に変換する方法を説明します!

スポンサーリンク

整数値を持つ文字列→整数型の変換

整数値を持つ文字列を整数型に変換するためには、stdlib.hに含まれるatoi関数を使います。サンプルコードは以下の通りです。

サンプルコード

#include <stdio.h> 
#include <stdlib.h> 
int main(int argc, char *argv[]) { 
  int i; 
  i = atoi( argv[i] );

  printf("コマンドライン引数[1] >>> %s\n", argv[1]); 
  printf("変換後の引数 >>> %d\n", i); 

  return 0; 
}

このサンプルコードを実行すると以下の画像のようになります↓

無事、このように整数型として出力することができました!

整数型ではなく浮動小数点数型に変換するには

小数値を持つ文字列を浮動小数点型(float型、double型)に変換するためには、stdlib.hに含まれるatof関数を使います。サンプルコードは以下の通りです。

サンプルコード

#include <stdio.h> 
#include <stdlib.h> 
int main(int argc, char *argv[]) { 
  float f; 
  f = atof( argv[1] );
 
 printf("float >>> %f\n", f); 

 return 0; 
}

このサンプルコードを実行すると以下の画像のようになります↓

サンプルコードではatof( argv[1] )を格納する変数fをfloat型に宣言していますが、double型を宣言することもできます。

スポンサーリンク

まとめ

コマンドライン引数に入力した数値をプログラムの計算などに使えるのは非常に便利です。

是非、使ってみて下さい!