小编Gri*_*fin的帖子

itoa在C++中创建了一个无限循环

这很奇怪.itoa();似乎创造了一个无限循环.

for(int i = 0; i < 10; i++)
{
        char buffer[1];
        itoa(i, buffer, 10);
        std::cout << buffer;
}
Run Code Online (Sandbox Code Playgroud)

为什么它会这样做呢?我尝试使用不同的变量i,没有变量的数值(即itoa(1, buffer, 10);),它仍然在无限循环中结束.我试图谷歌没有太大的成功,我在这里找到了一个旧邮件.我使用Windows XP 32位和Code :: Blocks(带GCC)作为编译器.

有谁知道什么是错的?提前致谢.

c++ loops itoa infinite-loop

0
推荐指数
1
解决办法
324
查看次数

当字符串代表零时使用atoi?

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

int main(int argc, char **argv)
{
        if(argc != 2)
                return 1;
        if(!atoi(argv[1]))
                printf("Error.");
        else printf("Success.");
        return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我输入低于或高于零值的参数时,我的代码有效.

[griffin@localhost programming]$ ./testx 1
Success.
[griffin@localhost programming]$ ./testx -1
Success.
[griffin@localhost programming]$ ./testx 0
Error.
Run Code Online (Sandbox Code Playgroud)

为什么不起作用?

c++ g++ atoi zero

0
推荐指数
1
解决办法
3082
查看次数

标签 统计

c++ ×2

atoi ×1

g++ ×1

infinite-loop ×1

itoa ×1

loops ×1

zero ×1