C编程:从stdin读取所有ascii字符

时间:2012-10-18 07:49:29

标签: c

我是C的新手。我找不到编写程序的方法,该程序能够从stdin中读取所有ASCII字符(包括非打印字符和空格)。 我知道scanf不适用于空格字符(不确定其他非打印字符)。 基本上我想把整个文件放到一个数组中,包含原始文本文件(stdin = .txt文件)中的所有内容。 有谁知道我怎么做到这一点? 谢谢

2 个答案:

答案 0 :(得分:3)

阅读getchar()以获取“所有ascii字符”。还fgetc(stdin)

要写入文件,您需要使用FILE *fopen(const char *filename, const char *mode) function, fputc(int c, FILE *stream), fclose(FILE *)

答案 1 :(得分:1)

#include<stdio.h>
int main(){
  char buf[16]; 
  int c; 
  while (c=fread(buf,1,16,stdin)) 
    fwrite(buf,1,c,stdout);
}