[英]How should i limit the number of characters interpretted by fscanf?
我正在編寫一個程序,以便從stdin
讀取內容,然后將讀取的內容寫入stdout
,以轉義找到的所有轉義十六進制數字。 我要讀取的所有數字都是8位。 這就是我到目前為止所擁有的
while((c = fgetc(stdin)) != EOF) {
if(c == '%') {
fscanf(stdin,"%x",&r);
printf("%i \n",r);
}
}
除了我在標准輸入中寫入類似%FFF
之類的內容時,它會以3位數的十六進制數字讀取的事實有效。 我應該如何限制fscanf
僅讀取2個字符? 我曾考慮過將接下來的2個字符讀入緩沖區並sscanf'ing
,但這對我來說感覺並不好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.