首页 > 解决方案 > 从 C 中的文本中获取一行的函数

问题描述

我正在尝试编写一个传递文本并且只返回一行的函数(主要目标是检查字符串是否在一行中,如果是,则打印它,如果不是,则不打印它)我的函数获取行因此接收字符由于 getchar 在字符之后,如果输入的字符是 \n 则 get char 返回该行。这是我试图做的:

char get_line(){
    int i=0;
    char c;
    char *s=malloc(MAX_LINE*sizeof (char));
    char s[MAX_LINE];
    while ((c=getchar())!=EOF){
        if (c!='\n'){
            s[i]=c;
            i++;
        }
        else{
            s[i]='\0'
        }
            return s;
        }
    s[i]='\0';
    return s;
}

我不想要更好的代码,但要解释为什么我的代码不起作用

标签: cgetchar

解决方案


推荐阅读