# 标准库stdlib.h函数itoa() 原型 ```c char * itoa (int value, char * str, int base); ``` 把整型数字转换成字符串存储在数组中。 参数 ```bash value: 一个整型 str: 字符数组 base: 进制 ``` 返回指向生成的以 null 结尾的字符串的指针,与参数`str`相同。这个函数未在 ANSI-C 中定义,也不是 C++ 的一部分,但受某些编译器支持。在某些情况下,符合标准的替代方案是sprintf。特别注意!!!非标准库函数,移植性差,在使用时应注意。 ==我分别使用了GCC和MSVC2015编译器编译了一段实例,都发生错误,这个函数已经不被一般的编译器所支持,所以弃用该函数。== ```c #include #include //浮点结构 typedef struct { unsigned int nMant : 23; //尾数 unsigned int nExp : 8; //指数 unsigned int nSign : 1; //符号 } FP_SINGLE; int main(int argc, char *argv[]) { char strBin[33] = { 0 }; float f = 19.625; FP_SINGLE *p = (FP_SINGLE*)&f; itoa(p->nSign, strBin, 2); printf("Sign: %s\n", strBin); itoa(p->nExp, strBin, 2); printf("exp: %s\n", strBin); itoa(p->nMant, strBin, 2); printf("mant: %s\n", strBin); return 0; } ```