C++中给链表中的元素赋值问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 17:43:39
我定义了一个链表节点 typedef struct ExamQues{
int number;
char exam[200];
char answer[2];
char explain[200];
struct ExamQues *next;
}ExamQues,*question;
我想给其中的字符变量: exam[200]、explain[200],用一段带空格的字符串(比如 This is my first program)填充,我用了gets();函数,它可以给字符变量赋值,但是好像在链表中就出错了,“get(p->exam)出错”,请教个位大虾,帮帮忙,谢谢!
更直白的问:怎么给链表成员exam[200]赋以"This is my first program."这样的字符串.通过键盘输入.

gets()这个函数只能给字符赋值,不能给字符串赋值!如果要给字符串,就要用strcpy()!

你的补充 我明白了!
scanf("%s",exam);
这样就行了!

gets()函数只能给字符赋值,如果要给字符串,需用strcpy()

如要给s字符串赋值为"I love C++!",应该是strcpy(s,"I love C++!")
这个问题与链表没有关系。

问题是指针p是否指向的对象是否存在?单从语句上看
get(p->exam)没有错误。