itoa (Integer to ASCII) は、整数型の値を文字列に変換するC言語の非標準ライブラリ関数。POSIX標準でもなく、glibc や BSD libc など大半の標準Cライブラリでは利用不可。Microsoft Visual C では_itoaが用意されている。実装されている場合は標準ヘッダーファイルにおいて宣言されていることが多い。
第1引数に与えられたint型の整数値を、第3引数に指定した基数表記でヌル終端文字列に変換し、第2引数に指定したcharへのポインタが指す配列(バッファ)に書き込む。戻り値は、第2引数に渡されたポインタそのものを返す。基数に無効な値が指定されて変換が失敗した場合はNULL(ヌルポインタ)を返す実装もある。
例えば、第1引数に100、第2引数に十分なサイズの文字配列、第3引数に16を指定すると、文字配列は"64"となる。
移植性がないこと、またバッファオーバーラン(バッファオーバーフロー)耐性がないことから、一般的には使用しないことが推奨されている。標準Cライブラリでは、printfファミリーのsprintfや、C99で標準化されたsnprintfなどが代替の候補に挙げられる。
形式
Go言語
Goのstrconvパッケージでは、整数値を文字列に変換する関数Itoa()と、文字列を整数値に変換する関数Atoi()が用意されている。
脚注
関連項目
- atof
- atoi
- atol
- strtol
外部リンク
- itoa() — Convert int into a string - IBM Documentation
- itoa() - ストリングへの int の変換 - IBM Documentation
- itoa, _itow - RAD Studio




