绝大多数C/C++初学者的第一个程序是打印以下字符串:
Hello world!
对于入门者而言,个人认为下列部分可能成为障碍:
(1) 程序文本编写,了解基本程序结构,亦或者说那些不可或缺的要素;
(2) 编译环境的安装与调试,使程序结果可以通过我们的编译环境返回;
C语言中,可使用以下程序打印上面提到的“Hello world!”:
#include<stdio.h>
void main()
{
printf("Hello world!\n");
}
程序需要写在一个文件中,称这个文件为“源文件”,上述程序可以写入一个txt文本文档,保存后把拓展名“.txt”改为“.c”即可。
从上面程序可以看出一个函数由函数类型、函数名、参数列表(形参列表)、函数体组成。main是函数名,void用于表述函数类型,说明函数会返回一个什么类型的值(此处void表示“空”,即没有返回值,该例子中的void也可以不写);最后是函数体,它从“{”开始,以“}”结束,最外侧两个花括号之间是一条或多条函数语句,用于实现具体功能(花括号是界定符,也属于函数体)。
本例中有三点需要注意:
其一,#include<stdio.h>是一个预处理指令,用于将头文件stdio.h的内容替换到该预处理指令所在位置,如果没有它,printf无法实现打印功能;
其二,main函数是一个特殊的函数,它是一个程序(或者整个工程)的唯一入口,所以整个程序里必须有且只有一个main函数(main并非关键字,如果你用main作为函数变量名也是合法的,但个人不建议这么做,为了代码的可读性和可维护性,main最好避免用于重要函数名以外的其它地方);
其三,\n不是两个字符,而是一个字符(转义字符),它表示换行,printf函数不会自动换行,得在双引号内需要换行的地方加入\n,所有转义字符和简单说明如下:
| 转义字符 | 含义 | ASCII 码值(十进制) | 功能简述 |
|---|---|---|---|
| \a | 警报(响铃) | 7 | 触发系统提示音(蜂鸣),以引起用户注意。部分系统中可能没有效果。 |
| \b | 退格 | 8 | 将光标位置向左移动一个字符。如果光标已经在行首,对应行为可能因系统差异而有所不同。 |
| \f | 换页(进纸符) | 12 | 将光标移动到下一页的开头。在打印输出时很有用,但在屏幕输出中可能显示为空白字符。 |
| \n | 换行 | 10 | 将光标移动到下一行的开头。这是最常用的行结束符,用于文本的换行。 |
| \r | 回车 | 13 | 将光标移动到当前行的开头。通常与 \n 配合使用,在 Windows 系统中表示换行。 |
| \t | 水平制表符 | 9 | 将光标移动到下一个制表位。通常用于对齐文本或创建缩进效果。 |
| \v | 垂直制表符 | 11 | 在支持的设备上,将光标向下移动到下一个垂直制表位置。在大多数现代终端中,效果可能与 \n 相同。 |
| \\ | 反斜杠 | 92 | 用于在字符串中表示一个字面意义上的反斜杠字符。 |
| \' | 单引号 | 39 | 用于在字符常量中表示一个字面意义上的单引号字符。 |
| \" | 双引号 | 34 | 用于在字符串常量中表示一个字面意义上的双引号字符。 |
| \? | 问号 | 63 | 用于表示字面意义上的问号,可用于避免触发三字符序列(三字符序列均带两个?)。 |
| \0 | 空字符(NULL) | 0 | 表示字符串的结束。在 C 语言中,字符串以空字符结尾,它占用字符串空间,但不计入字符串长度 |
| \xhh | 十六进制值 | - | 表示一个十六进制值,其中 hh 是一个或多个十六进制数字。例如,\x41 表示字符 'A'。 |
| \ooo | 八进制值 | - | 表示一个八进制值,其中 ooo 是一到三个八进制数字。例如,\101 表示字符 'A'。 |
至于编译环境,暂不作为第一篇随笔的重点,简单来说,可以从以下两种方式做选择:
(1) 选择扩展性好或功能强大的IDE,个人推荐Visual Studio Code、Dev C++。
Visual Studio功能强大,但截至写该随笔前只支持Windows系统,且安装包较大;
Code::Blocks免费且相对轻量,支持多平台,安装可能相对复杂,界面较为复古(说不准这正是一些人喜欢的);
CLion功能强大,但付费,且内存占用较大,初学者可酌情考虑;
(2) 先不安装IDE,降低学习时间成本。安装MinGW,配置环境变量,将MinGW的bin目录对应路径添加到系统变量中的“PATH”,打开CMD,cd命令切换到程序源文件所在目录,执行指令gcc -o xxx.c(源文件名),在程序源文件所在目录下会生成一个可执行文件xxx.exe,window直接输入xxx.exe并回车,完成执行。
最后,你将从IDE的输出窗口或者CMD窗口里看到“Hello world!”打印。
可自行转载,但请附带出处:https://www.cnblogs.com/newspace-time/p/19161238
posted on
浙公网安备 33010602011771号