Mark7758
2020-05-12 18:29
采纳率: 25%
浏览 657

为什么这个C代码运行结果输出为空?

用C语言编写整数转换为字符串运行错误

代码

#include <stdio.h>
#include <stdlib.h>
char *itos(int num,char* str);

int main()
{
    int t;
    char s[8]={0};
    scanf("%d",&t);
    itos(t,s);
    printf("%s",s);
    return 0;
}

char *itos(int num,char* str)
{
    int i,j;
    char tmp[8]={0};
    for(i=0;i<9;i++)
    {
        str[i] = num%10 + '0';
        num = num/10;
        if(num == 0)
            break;
    }

    for(j=0;i>=0;i--)  //倒序放入str中
        str[j++] = tmp[i];
    str[j] = '\0';
    return str;
}

顺利通过编译,运行结果如下

图片说明

没输出出来字符串,看不出来问题了::>_<::

求各位大神给小弟指点一二

1条回答 默认 最新

相关推荐 更多相似问题