我將其中包含空格的字符串作爲輸入,並用NULL字符'\ 0'替換空格。當我現在打印字符串時,我只希望直到第一個空字符的部分,這是第一個空格,但是我得到的是原始字符串。打印一個空字符的字符串
這裏是代碼 -
#include<stdio.h>
int main(){
char a[1000];
int length, i = 0;
length = 0;
scanf("%[^\n]s", a);
while(a[i]!='\0')
i++;
length = i;
printf("Length:%d\n", length);
printf("Before:%s\n", a);
for(i=0;i<length;i++){
if(a[i] == " ")
a[i] = '\0';
}
printf("After:%s\n", a);
return 0;
}
什麼這是錯的?
'A [1] ==「「'是不一樣的'A [1] =='「'。 – DCoder
請注意編譯調試信息和啓用所有警告的習慣。如果你在linux上用'gcc -Wall -g'進行編譯,你會得到一個警告,以幫助你發現你的錯誤。 –
@直播你應該發佈這個答案。 –