コンテンツにスキップ

itoa

出典: フリー百科事典『ウィキペディア(Wikipedia)』

itoa (Integer to ASCII) は、整数型の値を文字列に変換するC言語の非標準ライブラリ関数POSIX標準でもなく、glibcBSD libc など大半の標準Cライブラリでは利用不可。Microsoft Visual C++では_itoaが用意されている[1]。実装されている場合は標準ヘッダーファイル<stdlib.h>において宣言されていることが多い。

第1引数に与えられたint型の整数値を、第3引数に指定した基数表記でヌル終端文字列に変換し、第2引数に指定したcharへのポインタが指す配列(バッファ)に書き込む。戻り値は、第2引数に渡されたポインタそのものを返す。基数に無効な値が指定されて変換が失敗した場合はNULLヌルポインタ)を返す実装もある。

例えば、第1引数に100、第2引数に十分なサイズの文字配列、第3引数に16を指定すると、文字配列は"64"となる。

移植性がないこと、またバッファオーバーラン(バッファオーバーフロー)耐性がないことから、一般的には使用しないことが推奨されている。標準Cライブラリでは、printfファミリーのsprintfや、C99で標準化されたsnprintfなどが代替の候補に挙げられる。

形式

[編集]
#include <stdlib.h>
char *itoa(int value, char *buffer, int radix);

Go言語

[編集]

Gostrconvパッケージでは、整数値を文字列に変換する関数Itoa()と、文字列を整数値に変換する関数Atoi()が用意されている[2]

脚注

[編集]

関連項目

[編集]

外部リンク

[編集]