2
printf("enter the string");
scanf("%[^\t\n]s",str);
//的ABV代碼是如何工作的,接受多字的字符串,而無需使用獲取並使用只有scanf的這是如何工作接受使用scanf的多字串?
printf("enter the string");
scanf("%[^\t\n]s",str);
//的ABV代碼是如何工作的,接受多字的字符串,而無需使用獲取並使用只有scanf的這是如何工作接受使用scanf的多字串?
[
匹配的從指定 字符的非空序列接受字符的 ;下一個指針必須是指向 char的指針,並且必須有足夠的空間存儲字符串中的所有字符以及終止的空字節。通常的跳過 領先的白色空間被抑制。該字符串將被組成(或不在)特定集合中的字符 ;該集合是 由開頭的括號[
之間的字符 和一個閉括號]
字符之間的字符定義。如果在開括號後的第一個字符是 迴音(^
),則該組不包括那些 個字符。...
的字符串一個字符的不是在外觀(或,具有 抑揚,IN)設置或當字段寬度耗盡結束。
(Linux的scanf(3)
手冊頁。)
所以scanf
讀取多達不是一個選項卡(\t
)或換行(\n
)的第一個字符。它確實讀取空格。
幫忙?? 16分鐘前 – 2011-02-12 10:24:57