3

以下に示すように、2 つの変数を宣言して初期化しました。

int a=5;
char* str;
str = (char*)calloc(255, sizeof(char));

標準 C で int を char* に変換したいのですが、C++ の itoa などの変換関数を使用できません。

Ubuntu 11.10 を使用しています

4

1 に答える 1

16

まず第一にitoa、C++ のことではありません。

あなたは単に使用することができますsprintf

sprintf(str, "%d", a)

ただし、実際のアプリケーションsnprintfでは、バッファ オーバーフローのリスクを取り除くために使用する必要があります。

str = malloc(16);
snprintf(str, 16, "%d", a);

また、整数を格納するには 15 文字で十分です。

于 2012-01-07T14:33:54.127 に答える