Tag: itoa

atoi是一个标准function。 但是itoa不是。 为什么?

为什么这个区别? 我已经遇到了可怕的问题,假设itoa在stdlib.h ,最后将itoa的自定义版本与不同的原型相关联,从而产生一些疯狂的错误。 那么,为什么itoa不是标准function呢? 它出什么问题了? 为什么标准偏向其孪生兄弟atoi ?

_itoa和itoa有什么区别?

Visual Studio对我大吼大叫使用itoa()说使用_itoa()代替? 它看起来像他们是相同的function。 是什么赋予了?

C错误:对’_itoa’的未定义引用

我正在尝试将整数转换为字符以写入文件,使用以下行: fputc(itoa(size, tempBuffer, 10), saveFile); 我收到这个警告和消息: 警告: ‘itoa’的隐含声明 未定义引用’_itoa’ 我已经包含了stdlib.h,并且正在编译: gcc -Wall -pedantic -ansi 任何帮助将不胜感激,谢谢。

如何将整数转换为可移植的字符串?

我正在寻找一种以可移植的方式将整数转换为字符串的方法(至少在Windows和Linux以及x86和x86_64之间可移植),而我虽然itoa(X)是标准的,就像atoi(1) 。 但我在维基百科条目中阅读了以下内容: itoa函数是标准C编程语言的普遍非标准扩展。 它不能被轻易使用,因为它没有在任何C语言标准中定义; 但是,编译器通常在处于非符合模式时通过头提供它,因为它是标准库函数atoi的逻辑对应物。 所以我想知道是否有任何方法可以以便携方式进行。 如果我必须编写自己的函数,我需要注意哪些事情?

使用数字作为大小创建整数的char数组

我试图在C中创建一个char数组,用int的数字填充它,但int可以是任意数量的数字。 我正在使用一个名为getDigits(int num)的创建函数,它返回int所具有的位数。 char buffer[getDigits(number)] = “”; snprintf(buffer, sizeof(buffer),”%d”,number); 但是当我使用gcc编译时,它返回: error: variable-sized object may not be initialized 我已经尝试了一切。 当我将其声明为char fileSizeStr[5] = “”; , 有用。 当我尝试动态声明缓冲区大小时,我可以看到问题正在上升,但我真的想知道是否是实现此目的的一种方法。

将整数转换为字符串而无需访问库

我最近阅读了一份面试问题样本: 编写一个函数将整数转换为字符串。 假设您无权访问库函数,即itoa()等… 你会怎么做?