|  | 
 
| 
创建一个可以存放任意长度整数的容器,然后输出
x
马上注册,结交更多好友,享用更多功能^_^您需要 登录 才可以下载或查看,没有账号?立即注册  
 求大佬帮忙看看这个为什么总是输出乱码
   
 
 复制代码#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
        printf("请输入:");
        char* str1 = NULL;
        char ch;
        int i = 1;
        //str1 = (char*)malloc(sizeof(char));
        while ((ch = getchar() != '\n'))
        {
                str1 = (char*)realloc(str1,(i++) * sizeof(char));
                str1[i] = ch;
        }
        printf("%s", str1);
        return 0;
}
 
 本帖最后由 jhq999 于 2022-3-17 18:03 编辑 
复制代码int main()
{
        printf("请输入:");
        char* str1 = NULL;
        char ch;
        int i = 1;
        //str1 = (char*)malloc(sizeof(char));
        while ((ch = getchar()) != '\n')///////////
        {
                        
            str1 = (char*)realloc(str1,(i+1) * sizeof(char));////////////
            str1[i-1] = ch;////////////
             i++;   
        }
        str1[i-1] = '\0';/////////////
        printf("%s", str1);
        return 0;
}
 | 
 |