C++(輸入與輸出)

輸入與輸出

  1. 輸入輸出是基於字節流的操作
  2. 面向過程輸入輸出: C函數庫,面向對線輸入輸出:I/O類庫
  3. 抽取:>> 插入:<<
cin >>x>>y;
cout<<x<<y;

面向控制檯的輸入/輸出

  1. 基於函數的控制檯I/O
//輸出
int putchar(int ch)
int puts(const char *p);
int printf( const char *format [,<參數列表>]);
//輸入
int getchar();
char* gets(char *p);
int scanf(const char *format [,<參數列表>])
  1. 基於類庫的控制檯I/O
//輸出 cout cerr clog
const char *p ="abcd";
cout <<p;   //abcd
cout << (void *)p;  //字符串的首地址
//進行輸出格式控制
//輸入
cin>> x>>y>>endl;
  1. 對"<<"、">>" 的重載

面向文件的輸入/輸出

  1. 流式文件:文件看成一系列字節所構成的字節串
  2. 打開文件 – 操作文件 --關閉文件
  3. 數據的存儲方式:文本方式、二進制方式
  4. 基於函數庫的文件I/O
//輸出
int fputc(int c,FILE *stream);
int fprintf(FILE *stream ,const char *format [,argument] ...);
size_t fwrite(const void *buffer ,size_t size,size_t cout ,FILE *stream);

//輸入
int fgetc(FILE *stream);
int fscanf(FILE *stream ,const char *format [,argument ]...);
//讀寫操作的控制
"r+"   "w+"   "a+"
//隨機輸入/輸出
int fseek(FILE *stream,long offset,int origin);//指定位置
  1. 基於類庫的文件I/O
//輸出
ofstream out_file( <文件名><打開方式>);//直接方式
ofstream out_file;
out_file.open(<文件名>,<打開方式>);//間接方式

//輸出
ifstream in_file(<文件名>,<打開方式>);//直接方式
ifstream in_file;
in_file.open(<文件名>,<打開方式>);//間接方式
//I/O與隨機存取
istream::seekg();
ostream::seekp();

順序讀/寫
指定位置的隨機讀/寫

面向字符串變量的輸入輸出

文件–>內存(緩存區):buffer

基於I/O類庫的字符串變量I/O

  1. 動態擴充的內部緩衝(動態)
  2. 程序提供的緩存buf(靜態)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章