C语言基础:字符输入输出与程序编译解析

需积分: 16 6 下载量 98 浏览量 更新于2024-08-19 收藏 838KB PPT 举报
"字符的输入和输出是C语言中基础的操作,包括使用`getchar`、`putchar`、`getc`、`putc`等函数。这些函数允许程序员从输入流中读取字符或者向输出流写入字符。在C语言中,当读取字符时,字符通常被视为`unsigned char`,因此返回值通常是除EOF(文件结束标识符)之外的非负值。在处理字符输入输出时,常见的做法是使用循环结构,如`while((ch=getc(fp)) != EOF){}`,这样可以持续读取直到文件结束。 `ungetc`函数则是一个非常有用的工具,它能够将刚刚从流中读取的字符放回流中。这对于需要撤销最后一个读取操作的情况非常有用,例如在读取数字直到遇到非数字字符时停止。 在C语言的历史和标准化方面,C语言最初由Dennis Ritchie在1973年为Unix系统设计,后来在1989年由ANSI标准化为C89,1990年被ISO采纳为国际标准C90。1999年,ISO发布了新的C标准C99,引入了许多改进。C语言因其高效、可移植、功能强大和灵活性而受到广泛欢迎,同时也因为其对错误检查的宽松程度和可能导致的难以理解和修改而受到批评。 C语言的基本概念包括编写简单的程序,如打印"Hello World!"。一个C程序通常包含预处理、编译和连接三个步骤。预处理器处理#开头的指令,编译器将源代码转换为机器指令,连接器则将目标代码与所需的库整合成可执行程序。GCC是GNU Compiler Collection的缩写,是一个多语言编译器,支持C、C++、Fortran等,它是许多Unix系统(包括Linux、BSD和MacOS X)的主要编译器。 在编写C程序时,可以使用GCC的各种选项来控制编译过程,例如`-c`用于编译不链接,`-o`指定输出文件名,`-std`选择遵循的C标准,`-pedantic`要求严格符合标准,`-Wall`开启所有警告,`-O`系列选项用于代码优化,`-E`仅做预处理,`-S`生成汇编代码等。 在"Hello World!"程序中,`#include<stdio.h>`是一个预处理指令,用来引入标准输入输出库,`main`函数是程序的入口点,`printf`是一个库函数,用于输出字符串到标准输出。这些基本元素构成了C语言程序的基础。