我不断收到此错误段错误(核心转储)我不断收到此错误段错误(核心转储)
我的代码:
#include <stdio.h>
#include <string.h>
int main(void)
{
char name[80];
int length[10];
length == sizeof(name)
printf("What's your name?\n");
scanf("%s", name);
printf("The length of your name is %s", length);
}
编辑
好了,这里是我的新代码
#include <stdio.h>
#include <string.h>
int main (void)
{
char name[20];
printf("What is your name?\n");
scanf("%s", name);
printf("There are %d letters in your name", strlen(name));
}
而且它仍然不起作用。
'length == sizeof(name)'不确定这是干什么卡在你的代码中间。您正在使用等号运算符而不是赋值运算符,并且没有结尾分号。另外,'sizeof'不会告诉你一个人甚至还没有输入过的名字的长度(参见'strlen'并将其称为正确的位置。)并且,如上所述,您正在使用'% s'打印一个'int'。 – Joe
这并不需要太多的信息,但要注意格式说明符。特别是你的最后一个printf使用'%s',它需要一个字符串,但你传递一个int。这可能是。尽管这个问题没有太多的信息。 –
@scott_fakename:他实际上传递了一个'int *'。 –