如何用空格扫描字符串并打印它们C.

时间:2017-01-17 20:51:43

标签: c string

我必须读取一个字符串,与另一个字符串连接并打印结果 我试过这段代码:

int main(){
    char s= "StackOverflow ";
    char ss[100]; 
    fgets(ss,100,stdin);
    // i know i can use strcat but i don't want it here
    printf("%s%s",s,ss);
    return 0;
}
ss是#34;是学习东西的最佳网站!" 一些帮助?

1 个答案:

答案 0 :(得分:0)

首先,你必须使你的程序可编译,因为编译会产生一些错误。

1。)s必须定义为char *schar s[],因为char s只允许在那里存储一个字符,而不是数组。 char *s声明指向字符串文字的指针,char s[]声明字符串文字中存在的字符数组,并使用指定字符串文字的字符对其进行初始化。

2。)stdin是一个类型FILE *的全局变量(实际上它不是,但它表现得像),代表标准输入。如果您没有声明它,编译器不知道stdin标识符的来源,因此它会发出错误。消除第二个错误的方法是#include <stdio.h>,它有一个定义并使编译器满意。

完成这两个步骤后,您的程序就是:

#include <stdio.h>
int main(){
    char s[]= "StackOverflow ";
    char ss[100]; 
    fgets(ss,100,stdin);
    // i know i can use strcat but i don't want it here
    printf("%s%s",s,ss);
    return 0;
}

并按照您的意愿行事。