我已經得到了我使用的模擬數據包,其一個結構數組,它看起來像這樣:如何打印整數
typedef struct{
int source;
int dest;
int type;
int port;
char data[50];
}test;
test packet[50];
而且我試圖打印無論是在數據字段到屏幕。我當前的代碼如下所示:
printf("Enter a series of data numbers from 1-50: ");
scanf("%c", &packet[i].data[i]);
while (packet[i].data[i] > 48 || packet[i].data[i] > 57)
{
printf("Data series needs to be between 1-50, try again: ");
scanf("%c", &packet[i].data[i]);
}
printf("%c \n", packet[i].data[i]);
通過玩弄它,我已經能夠得到它的編譯 - 有時它給我回來402018,有時一個X,有時只是跳過的代碼完全。
任何人都可以看到我要去哪裏錯了嗎?我想在當前數據包[i]的實例中打印出整個字符數組(每次創建數據包時遞增)
while語句是要確保輸入的字符是一個數字,並根據到ASCII,數字在所述範圍內。
請溫和我,我對此很新。
非常感謝。
請顯示外部循環(控制'i'的值)。你也想通過文件輸入測試數據,而不是交互式 - 程序員不要輸入數據! :D – trojanfoe