• ベストアンサー

文字を整数(int)に変換

char型の数字文字を、int型に変換したいのですが、どんな方法があるでしょうか? 具体的には、 char s[6] = "12345"; int line[5]; のようなchar配列の文字を、int型のline配列に移したいのです。(line[0]=1,line[1]=2,...,line[4]=5となるように。) "文字 int 変換"などで検索でも調べたのですが、 int→文字のsprintfしか見つかりませんでした。 感覚的にはこの逆のような操作をしたいです。 何か関数を用いる方法でも、そうでない方法でもよいので、 教えてください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • jacta
  • ベストアンサー率26% (845/3158)
回答No.3

失礼、脊椎反射的に回答してしまいました。 数字1文字を整数に変換できればよいということですね。 それであれば、 line[0] = s[0] - '0'; のようにするだけでかまいません。 複数文字あるなら、これをループでまわしてください。

minoa_
質問者

お礼

そういえばintとcharは同じでしたね。 ちょっと忘れてました。 勉強になりました、ありがとうございます。

その他の回答 (2)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.2

strtolを使いましょう。 atoiは使うべきではありません。 http://www.kijineko.co.jp/tech/superstitions/conversion-from-string-to-integer-with-atoi.html

minoa_
質問者

お礼

urlは参考になります、ありがとうございます。

  • mk48a
  • ベストアンサー率56% (1133/2007)
回答No.1
minoa_
質問者

お礼

ありがとうございました。

関連するQ&A