int
fscanf
(file *stream,
const
char
*format,..
.)
fscanf 函式根據格式串 format 從流 stream 中讀取輸入,並把轉換後的值賦值給後續各個引數,其中的每個引數都必須是乙個指標。當格式串 format 用完時,函式返回。如果到達檔案的末尾或在轉換輸入前出錯,該函式返回 eof;否則,返回實際被轉換並賦值的輸入項的數目。
格式串format通常包括轉換說明,它用於指導對輸入進行解釋。格式字串中可以包含下列專案:
轉換字元說明了對輸入欄位的解釋方式。對應的引數必須是指標。
如果引數是指向 short 型別而非 int 型別的指標,則在轉換字元 d、i、n、o、u 和 x之前可以加上字首 h。如果引數是指向 long 型別的指標,則在這幾個轉換字元前可以加上字母 l。如果引數是指向 double 型別而非 float 型別的指標,則在轉換字元 e、f 和 g 前可以加上字母 l。如果引數是指向 long double 型別的指標,則在轉換字元 e、f 和 g 前可以加上字母 l。
轉換字元
輸入資料
引數型別
d十進位制整數
int *
i整型數
int * 該整型數可以是八進位制(以0開頭)或十六進製制(以0x或0x開頭)
o八進位制整型數(可以帶或不帶前導0)
int *
u無符號十進位制整型數
unsigned int *
x十六進製制整型數(可以帶或不帶前導0x或0x)
int *c字元
char * 按照字段寬度的大小把讀取的字元儲存到制定的陣列中,不增加』\0』字段寬度的預設值為 1。在這種情況下,讀取輸入時將不跳過空白符。如果需要讀入下乙個非空白符,可以使用%1s
s由空白字元組成的字串(不包含引號)
char * 它指向乙個字元陣列,該字元陣列必須有足夠空間,以儲存該字串以及在尾部新增的』\0』字元
e,f,g
浮點數float * float 型別浮點數的輸入格式為:乙個可選的正負號、乙個可能包含小數點的數字串,乙個可選的指數字段(字母 e 或 e 後跟乙個可能帶正負號的整型數)
pprintf("%p")函式呼叫列印的指標值
void *
n將到目前為止該函式呼叫讀取的字元數寫入對應的引數中
int *
[…]與方括號中的字元集合匹配的輸入字元中最長的非空字串
char * 末尾將新增』\0』。…]表示集合中包含字元「]」
[^…]
與方括號中的字元集合不匹配的輸入字元中最長的非空字串
char * 。末尾將新增』\0』。[^]…]表示集合中不包含字元「]」
%表示"%"本身,不進行賦值
注:
這裡的倒數第二條與第三條就是正規表示式
#include
#include
#include
intmain()
int
scanf
(const
char
*format,..
.)
scanf(…)函式與 fscanf(stdin, …)等價。
int
sscanf
(const
char
*s,const
char
*format,..
.)
sscanf(s, …)函式與 scanf(…)等價,所不同的是,前者的輸入字元**於字串 s。 c語言conio h和stdio h函式
conio是console input output 控制台輸入輸出 的簡寫,其中定義了通過控制台進行資料輸入和資料輸出的函式,主要是一些使用者通過按鍵盤產生的對應操作,比如getch 函式等等。getch 與getchar 的主要區別是 getch 不用回車即可獲得字元enter getchar ...
c語言標準庫詳解(零) 總述
標準庫不是c語言本身的構成部分,但是支援標準c的實現會提供函式庫中的函式宣告 型別以及巨集定義 標準庫中的函式 型別以及巨集分別在下面的標準標頭檔案中定義 include 標頭檔案的包含順序是任意的,並可包含任意多次。標頭檔案必須被包含在任何外部宣告或定義之外,並且,必須在使用標頭檔案中的任何宣告之...
C語言標準庫
ctype.h是c標準函式庫中的標頭檔案 定義了一批c語言字元 分類函式 c character classification functions 用於測試字元是否屬於特定的字元類別,如字母字元 控制字元等等 ctype.h的c標準庫的標頭檔案中提供的宣告幾個有用的函式測試和字元對映。yiibai....