a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C > 正文

對比C語言中getc()函數和ungetc()函數的使用

2020-01-26 14:56:21
字體:
來源:轉載
供稿:網友

C語言getc()函數:從流中讀取字符
頭文件:

#include <stdio.h>

函數getc()用于從流中取字符,其原型如下:

  int getc(FILE *stream);

【參數】參數*steam為要從中讀取字符的文件流。

【返回值】該函數執行成功后,將返回所讀取的字符。

【說明】若從一個文件中讀取一個字符,讀到文件尾而無數據時便返回EOF。getc()與fgetc()作用相同,但在某些庫中getc()為宏定義,而非真正的函數。

【實例】下面的示例演示了getc()函數的使用,在程序中采用該函數從標準輸入控制臺中讀取字符,代碼如下。

#include <stdio.h> //引入標準輸入輸出庫void main( ) {  char ch;  printf ("Input a character: ");  //輸入提示信息  ch = getc(stdin); // 從標準輸入控制臺中讀取字符  printf ("The character input was: '%c'/n", ch); // 輸出字符}

運行上述程序,首先聲明一個用于保存所取字符的變量;然后輸 出提示信息,接收從標準輸入控制臺按下的任意鍵,并將該字符輸出到控制臺。

利用getc()從文件中讀取字符串,代碼如下。

#include<stdio.h>#include<string.h>#include<stdlib.h>int main(void){  int ch;  int len;  int i=0;  FILE* fstream;  char msg[100] = "Hello!I have read this file.";  fstream=fopen("test.txt","at+");  if(fstream==NULL)  {    printf("read file test.txt failed!/n");    exit(1);  }  /*getc從文件流中讀取字符*/  while( (ch = getc(fstream))!=EOF)  {    putchar(ch);  }  putchar('/n');  len = strlen(msg);  while(len>0)/*循環寫入*/  {    putc(msg[i],fstream);    putchar(msg[i]);    len--;    i++;  }  fclose(fstream);  return 0;}

函數fopen利用模式“at+”打開文本文件,使用getc從文件流中逐個讀取字符,直到讀完。

C語言ungetc()函數:把字符退回到輸入流
頭文件:

#include<stdio.h>

ungetc()函數用于將一個字符退回到輸入流中,這個退回的字符會由下一個讀取文件流的函數取得。其原型如下:

  int ungetc(char c, FILE *stream);

【參數】c為要退回的字符,stream為要退回的輸入流。

【返回值】若該函數執行成功,返回非零值;否則,返回0。

舉例:下面的示例演示了ungetc()函數的使用,使用該函數將字符退回到輸入流中,其代碼如下。

#include<stdio.h>#include<ctype.h>int main(){  int i=0;  char ch;  puts("Input an integer followed by a char:");  // 讀取字符直到遇到結束符或者非數字字符  while((ch = getchar()) != EOF && isdigit(ch))  {    i = 10 * i + ch - 48; // 轉為整數  }  // 如果不是數字,則放回緩沖區  if (ch != EOF)  {    ungetc(ch,stdin); // 把一個字符退回輸入流  }  printf("/n/ni = %d, next char in buffer = %c/n", i, getchar());  system("pause");  return 0;}

輸出結果:

123ab

主站蜘蛛池模板:
日韩草比|
欧美级毛片
|
久久久久久久国产精品影院
|
国产高清视频
|
日韩精品视频在线观看免费
|
91精品国产综合久久福利
|
亚洲六月丁香色婷婷综合久久
|
国产美女高潮一区二区三区
|
色婷婷亚洲
|
天天草夜夜草
|
日韩欧美一级在线
|
欧美成人免费在线观看
|
日韩一区二区三区在线观看
|
日本欧美在线观看
|
曰本人一级毛片免费完整视频
|
日韩视频二区
|
欧美一区黄
|
久久久久久久久久穴
|
国产精品亚洲欧美日韩一区在线
|
91精品久久久久久久久
|
久久91|
欧美视频三区
|
亚洲成av人片在线观看无码
|
黄色免费观看网站
|
国产黄色网
|
日韩精品一区二区三区在线观看
|
日韩免费一区二区三区
|
男女视频免费在线观看
|
精品国产乱码久久久久久久
|
污网址在线看
|
成人免费淫片aa视频免费
|
午夜寂寞影视
|
国产精品久久久久久久久免费桃花
|
久久精选视频
|
亚洲一在线
|
国产一级特黄视频
|
啪一啪|
五月激情综合
|
亚洲女人天堂网
|
精久视频|
国产日韩欧美一区二区
|