我學會了(自學)當今C語言的結構基礎知識,並編寫了這個簡單的代碼。它正在編譯沒有任何錯誤。我知道成功的編譯並不是無錯軟件的保證。執行時,它僅掃描兩個結構變量的輸入並給出錯誤的顯示。爲了簡單起見,我選擇了一個char來存儲書名。我無法找出這裏的錯誤。你能找到一個嗎?C結構代碼編譯但沒有運行
#include<stdio.h>
int main(void)
{
struct book
{ char name;
float price;
int pages;
};
struct book b[3];
int i;
for (i = 0; i <= 2; i++){
printf("\nEnter name, price and pages ");
scanf("%c %f %i", &b[i].name, &b[i].price, &b[i].pages);
}
for (i = 0; i <= 2; i++)
printf("\n%c %f %i",b[i].name, b[i].price, b[i].pages);
return 0;
}
您的意見是什麼?你的錯誤輸出是什麼? – texasbruce
僅僅因爲編譯時沒有錯誤,這並不意味着你的程序會實際做你想做的。這通常被稱爲* bug *。 –
@GregHewgill我知道編譯不能保證無錯軟件。我很想知道上面提到的代碼中的錯誤,但這並不明顯。如果你能看到一個bug,請提及它.. – KawaiKx