我應該從stdin讀取輸入的格式,如「%C%d:%d:%d%d」開頭,並允許字符是+ - #如何讀取特定的輸入格式
我已經嘗試是因爲當我輸入輸入+ 15:00:00 1enterbutton#enterbutton它把\ n字符到未下面匹配變量c和返回0
這裏是
while(1){
ret = scanf(" %c %d:%d:%d %d",&c,&h,&m,&s,&id);
if (ret != 5) break;
if(c=='#') {
log++;
abs_prev=-1;
continue;
}else if(c=='+'){}
else if(c=='-'){}
else{
printf("invalid input.\n");
return 0;
}
}
此代碼失敗我的輸入可能看起來像什麼 + 8:00:00 100 + 8:50:00 105 - 9:30:00 100 - 18:20:00 105 - 19:00:00 100 # - 17:00:00 100 + 18:00:00 100 # # + 8:00:00 66 + 9:00:00 200 + 10:00:00 100 - 15:00:00 200 - 17:30:00 66
我想用它做的是,當第一個字符是+我存儲在樹中的數據,如果它 - 我將其存儲在B樹時,其#我創建新樹
您可以變更scanf()的如'的scanf( 「%C%d:%d:%d%d%* C」,& C,&H,M,S,&id);' – Gopi 2014-11-23 17:05:10
RET = scanf的( 「%c%d:%d:%d%d」,&c,&h,&m,&s,&id);?。什麼是ret的數據類型? – Shravan40 2014-11-26 07:31:47