控制台介面控制(五) 輸入輸出

2021-07-10 16:22:42 字數 3555 閱讀 4702

c中puts()函式

用來向標準輸出裝置(螢幕)寫字串並換行,其呼叫方式為,puts(s);其中s為字串字元(字串陣列名或字串指標)。    

功 能: 送一字串到流stdout中   

用 法: int puts(char *string);   

程式例:   #include

int main(void)   

說明:   puts 和 printf 的用法一樣,puts()函式的作用與語句「printf("%s\n",s);的作用相同。注意:puts在輸出字串後回車符。   puts()函式只能輸出字串,不能數值或進行格式變換。   可以將字串直接寫入puts()函式中,輸出至螢幕。如:puts("hello,turo c2.0:");

putchar()函式,輸出單個字元,不自動換行

int main(void)   

輸出結果為:   ***   t   m   d

ctype.h檔案中的處理字串的函式

1 字元測試函式   

1> 函式原型均為int is***x(int)   

2> 引數為int, 任何實參均被提公升成整型   

3> 只能正確處理處於[0, 127]之間的值   

2 字元對映函式   

1> 函式原型為int to***x(int)   

2> 對引數進行檢測, 若符合範圍則轉換, 否則不變   

int tolower(int); 'a'~'z' ==> 'a'~'z'   

int toupper(int); 'a'~'z' ==> 'a'~'z'

strtod  strtod(將字串轉換成浮點數)   

相關函式   atoi,atol,strtod,strtol,strtoul   表頭檔案   #include

定義函式   double strtod(const char *nptr,char **endptr);   

函式說明   strtod()會掃瞄引數nptr字串,跳過前面的空格字元,直到遇上數字或正負符號才開始做轉換,到出現非數字或字串結束時('\0')才結束轉換,並將結果返回。若endptr不為null,則會將遇到不合條件而終止的nptr中的字元指標由endptr傳回。引數nptr字串可包含正負號、小數點或e(e)來表示指數部分。如123.456或123e-2。  

範例   #includemain()   

執行   

a=12345.678900   b=1234.567000   endptr=qwer   c=-2322300.000000   l

inux c function()中關於strtod的範例有誤

strchr

原型:extern char *strchr(const char *s,char c);   const char *strchr(const char* _str,int _val)   char *strchr(char* _str,int _ch)   標頭檔案:#include

功能:查詢字串s中首次出現字元c的位置   說明:返回首次出現c的位置的指標,如果s中不存在c則返回null。

c語言函式strrchr

函式簡介

函式名稱: strrchr   函式原型:char *strrchr(char *str, char c);   所屬庫: string.h   函式功能:查詢乙個字元c在另乙個字串str中末次出現的位置(也就是從str的右側開始查詢字元c首次出現的位置),並返回從字串中的這個位置起,一直到字串結束的所有字元。如果未能找到指定字元,那麼函式將返回null。

strcspn  原型:size_t strcspn(const char *s1,const char *s2);   相關標頭檔案:#include 功能:順序在字串s1中搜尋與s2中字元的第乙個相同字元,返回這個字元在s1中第一次出現的位置。

strpbrk  用法:#include 功能:依次檢驗字串s1中的字元,當被檢驗字元在字串s2中也包含時,則停止檢驗,並返回該字元位置,空字元null不包括在內。   說明:返回s1中第乙個滿足條件的字元的指標,如果沒有匹配字元則返回空指標null。   用途:在源字串(s1)中找出最先含有搜尋字串(s2)中任一字元的位置並返回,若找不到則返回空指標。

strpbrk  用法:#include 功能:依次檢驗字串s1中的字元,當被檢驗字元在字串s2中也包含時,則停止檢驗,並返回該字元位置,空字元null不包括在內。   說明:返回s1中第乙個滿足條件的字元的指標,如果沒有匹配字元則返回空指標null。   用途:在源字串(s1)中找出最先含有搜尋字串(s2)中任一字元的位置並返回,若找不到則返回空指標。

gets  

函式:gets(字元指標)   

標頭檔案:stdio.h(c中),c++不需包含此標頭檔案   

原型:char*gets(char*buffer);   

功能:從stdin流中讀取字串,直至接受到換行符或eof時停止,並將讀取的結果存放在buffer指標所指向的字元陣列中。換行符不作為讀取串的內容,讀取的換行符被轉換為null值,並由此來結束字串。   

返回值:讀入成功,返回與引數buffer相同的指標;讀入過程中遇到eof(end-of-file)或發生錯誤,返回null指標。所以在遇到返回值為null的情況,要用ferror或feof函式檢查是發生錯誤還是遇到eof。   

注意:本函式可以無限讀取,不會判斷上限,所以程式設計師應該確保buffer的空間足夠大,以便在執行讀操作時不發生溢位。如果溢位,多出來的字元將被寫入到堆疊中,這就覆蓋了堆疊原先的內容,破壞乙個或多個不相關變數的值,為了避免這種情況,我們可以用fgets()來替換gets()。這個事實導致gets函式只適用於玩具程式。在v7的手冊(2023年)中說明:為了向後相容,gets刪除換行符,gets並不將換行符存入緩衝區。   

示例:   c:#include "stdio.h" 這個標頭檔案包涵gets函式   void main()      c++:   #includeusing namespace std;   int main()   ;

函式名: stat()   功 能: 得到檔案的資訊,將其儲存在buf結構中,buf的位址以引數形式傳遞給stat。   用 法: int _stat(const char *path,struct _stat *buffer)

perror ( )用 來 將 上 一 個 函 數 發 生 錯 誤 的 原 因 輸 出 到 標 準 裝置 (stderr) 。引數 s 所指的字串會先列印出,後面再加上錯誤原因字串。此錯誤原因依照全域性變數error 的值來決定要輸出的字串。   在庫函式中有個error變數,每個error值對應著以字串表示的錯誤型別。當你呼叫"某些"函式出錯時,該函式已經重新設定了error的值。perror函式只是將你輸入的一些資訊和現在的error所對應的錯誤一起輸出。

檔案操作:

#include

int main(void)   

return 0;   

}執行結果

[root@localhost io]# gcc perror.c   

[root@localhost io]# ./a.out   

/root/noexitfile: no such file or directory

控制台輸入 輸出

1 使用input 方法可以進行控制台輸入 例 name input 請輸入名字 此時控制台會顯示 請輸入名字 輸入完畢後按下enter會將使用者輸入的內容賦值給name變數 name input 請輸入名字 print 你好 name 2 print 輸出的多種形式 在列印結尾顯示內容 print...

C C 控制台輸入輸出

c 1.輸入 1 readline string input console.readline 讀取一串字元,直到使用者按下回車。string input while input console.readline null 若要讀取一行多個數字,可以使用如下方法 string str str inp...

python控制台輸入 輸出

python 注釋 變數 型別 python運算子 比較 邏輯運算子 print 我是簡單的字串輸出 控制台執行結果 我是簡單的字串輸出age 18 print 我今年 d歲 age age 1 print 我今年 d歲 age age 1 print 我今年 d歲 age 控制台列印結果 我今年1...