我不斷收到此錯誤段錯誤(核心轉儲)我不斷收到此錯誤段錯誤(核心轉儲)
我的代碼:
#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 *'。 –