这是我的代码,它使用了itoa()函数,似乎不起作用。让我说清楚,我正在研究C。

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

void main()
{
    int i,j;
    for(i = 0;i<= 4; i++)
    {
        for (j = 0; j <= 9; j++)
        {
            //printf("Hi\n");
            char fileName[10]="A";
            char append[2];

            itoa(i,append,10);
            strcat(fileName,append);

            itoa(j,append,10);
            strcat(fileName,append);

            printf("i=%d j=%d\n", i,j);
            printf("%s\n", fileName);
            //FMS()
        }
        //printf("Anuj=%d\n",i );
    }
}

输出
RC4Attack.c:(.text+0x5e):对itoa'RC4Attack.c:(.text+0x8e): undefined reference toitoa'的未定义引用
错误2:LD返回1退出状态

最佳答案

标准C库中没有itoa。相反,使用sprintf。

sprintf(string_value, "%d", integer_value);

编辑
使用snprintf也可以防止缓冲区溢出。
snprintf(string_value, max_size, "%d", integer_value);

10-08 13:25