C语言基础-简介、程序基本框架
一、编程基础知识
1、二进制、十进制、十六进制;
计算机内部,用二进制;
二进制,0,1;超过2就进位;
0 1
1 1
2 10
3 11
4 100
...
二进制在C语言中的表示:0b10010101
十进制转换成二进制:除2取余,从后往前取;
10
2--------------
50
21
10
---------------^
十进制10 = 二进制 1010 = 十进制 1 * 2^3 + 0 * 2^2 + 1 * 2^1 + 0 *2^0 = 8 + 0 + 2 + 0 = 10
要求记忆:
2^0 1
2^1 2
2^2 4
2^3 8
2^4 16
2^5 32
2^6 64
2^7 128
2^8 256
0~9, 10 11 12 13 14 15
十六进制:0~9,A, B, C, D, E, F
十进制转16进制,除16取余
37
16--------
25
十进制37 = 十六进制25 = 2 * 16^1 + 5 * 16^0 = 37
十六进制在C语言中的表示:0x25
要求记忆:
(D)十进制01234567
(H)十六进制 01234567
(B)二进制0000 0001001000110100 01010110 0111
十进制89101112131415
十六进制 89ABCDEF
二进制1000 10011010 1011 1100110111101111
十六进制17 = 00010111
10进制70 = 64 + 6 =十六进制 40 +6 = 46 = 01000110
2、ASCII 码表
ASCII表中:
理解记忆:
0x20之前是控制字母,不可见;用于控制外设或协议标志;
回车,0xD,换行,0xA;
阿拉伯数字,0-9,对应的ASCII值,0x30-0x39
大写字母,A-Z,对应的ASCII值,0x41-0x5A
小写字母,a-z,对应的ASCII值,0x61-0x7A
2、机器语言、汇编语言、高级语言;
汇编:assembly,从汇编语言的程序,翻译成机器语言,让CPU执行;
编译:compile,从高级语言的程序,翻译成汇编程序,然后,利用原有的汇编器翻译成机器语言,让CPU执行;
Fortran,Cobol,pascal,发展出C语言;
3、C语言特性;
语法简洁,无论是关键字,变量,运算符,包括整个程序结构,非常简洁;
目标代码量小,效率高;
特有的地址操作功能;
4、编译过程简介;
二、第一个C语言程序
1、框架;
源文件以.c作为后缀,头文件以.h作为后缀;
/**/之间的内容,作为注释,本身不执行,只是便于代码的阅读者理解
//之后的内容,也是注释,只限于本行;
#include 文件包含,把其他文件的内容,也一起引入进本文件;
/*
l 第一个C语言程序
l 在当前终端界面输出Hello World!
l QianFeng edu
l Apr 20,2023
*/
#include
//这个我的第一个c语言程序
int main()
printf("Hello world!\n");
return 0;
除了注释,所有字符,半角;
(),{},必须成对、匹配、闭合;
每行最好1条语句,用;结尾;
所有语句,自上而下顺序执行;
所有C语言代码中,出现的字符,都是大小写敏感;
2、编译环境配置;
sudo apt-get install build-essential
gcc 源文件
自动在当前目录下,生成a.out
执行a.out输出结果
如果提示a.out找不到,可输入./a.out执行;也在在用户工作目录配置PATH变量,如下:
cd ~
vim .bashrc
在最后一行,增加下面内容:
export PATH=$PATH:/home/melvyn/prjDemos
红色部分用自己的a.out所在的实际目录代替;
然后保存,并执行 source .bashrc
3、生成文件简介;
gcc s1-d01-c1-hello.c,自动生成a.out
gcc s1-d01-c1-hello.c -o hello,生成我们自己的程序名hello;
gcc -S s1-d01-c1-hello.c -o hello.s 生成中间的汇编语言文件hello.s;
gcc -g s1-d01-c1-hello.c 生成带调试信息的a.out
4、C语言程序代码规范;
好程序的4个标准:正确,可靠,易读,好维护;
必要的注释;适当空行;缩进风格;最好每行一条语句,如果单条语句太长就分成多行;
变量和函数命名,符合规范。
