标准C语言 第二天
2017-10-10 22:56
295 查看
C语言中大部分内容应该记录在以“.c”作为扩展名的文件里。这种文件叫做C语言的源文件。
C语言中一少部分内容需要记录在以“.h”作为扩展名的文件里,这种文件叫做C语言的头文件。
C语言中程序可以直接包含数字和加减乘除符号(乘法用*表示,除法用/表示)。
每一个计算步骤最后都必须用;结束,用;结束的一个计算步骤叫做一个语句。
C语言程序中绝大多数语句写在大括号里。 { 2+5;}。
C语言中大括号可以用来表示函数(目前可以把函数当作一组语句看待)。
C语言程序中每个函数都必须有名字,不同函数的名字必须不同。
C语言程序中必须包含叫做main的函数,它叫做主函数。
程序从主函数里的第一条语句开始执行,当主函数里的最后一条语句结束后整个程序结束。
C语言中允许函数在完成所有工作之后用一个数字表示它的工作结果,这个数字叫做函数的返回值。
主函数应该有返回值,如果返回值是0就表示程序希望计算机认为它正常结束,如果不是0就表示程序希望计算机认为她出了问题了。
main(){ 2+5;return 0;}
C语言里预先保留了几十个英文单词,它们叫做C语言的关键字。每个关键字都有专门的用途,不能随便使用。-----都是由小写字母构成的。
return --- 关键字 --- 用途 主要用于结束函数的执行(任何时候一定起到这个作用);
可用于指定返回值的数字。
计算机里根据不同数字在某个方面的区别把数字分成几组,每组叫做一个数据类型,每个数据类型都有自己的名字。
整数类型是一种数据类型,它的名字是 int ;
它里包含几乎不带小数点的数字。
程序中说有数字必须有类型;
不带小数点的数字默认都是整数类型的。
如果一个函数有返回值就必须把返回值的类型名称写在函数名称前。
C语言编码规范:
一行里最多包含一条语句; int main(){
同级别的语句最左边一列应该上下对齐; 2+5;
在合适的地方使用空格和空行。 return 0;
}
C语言中通常包含预处理指令,
预处理指令以 # 做开头不是以 ;做结尾。
标准C阶段遇到的预处理指令都可以把文件里的内容替换成其他内容。
#include --- 预处理指令 可以把一个头文件的内容包含到当前文件中。
在这个预处理指令中需要使用相对路径表示被包含头文件的位置。
如果把路径包含在 <> 里就表示以系统中预先规定好的一组目录依次作为起点查头文件;
如果把路径包含在 “” 里就表示首先以当前文件所在目录作为起点查找,然后再以系统中规定好的一组目录依次作为起点查找。
单行注释以 // 作为开头一直到结尾;
多行注释以 /* 作为开头, */ 做结尾。
C语言中大量使用名称区别不同内容;
这些名称叫做标识符;
标识符最好使用英文单词编写。
标识符的编写规则:
第一个字母应该是英文字母或下划线;
后面的字母可以是英文字母、下划线或者阿拉伯数字;
大小写不同的标识符是不同的标识符;
关键字不能作为标识符使用;
标识符没有长度限制,但计算机只会截取前面一部分使用;
标识符应该采用驼峰方式或者下划线方式书写。 Xi_an = XiAn
编译器可以把编写好的程序翻译成计算机能认识的格式。
gcc是Linux系统中C语言的编译器, gcc + 源文件名称 .c
Linux系统中C语言程序
4000
开发基本流程
使用Vi编写源文件和头文件 .c 和 .h 使用gcc把源文件翻译成计算机认识的格式(编译)
使用 ./a.out 作为命令执行得到的结果文件。
gcc编译器的工作步骤
处理所有的预处理指令
把第一步的结果翻译成计算机认识的格式(编译)
把上一步的结果合并成最终可以执行的文件(链接)
gcc选项介绍
-E 只处理预处理指令 gcc -E + 源文件名称
-C 只处理预处理指令和编译 gcc -C + 源文件名称
处理结果以 .O 作为扩展名的文件,这种文件叫做目标文件
-O 决定得到的结果文件名称 gcc oldemo.c -O oldemo
-std=C89/-std=C99 决定采用什么版本的规范进行编译
默认采用C89规范
C语言里提供了一组工具,它们叫做标准函数;
每个标准函数负责解决一个常见的问题;
有自己的名字;
可以在程序中编写函数调用语句使用标准函数。
printf标准函数可以把程序中的数字显示在屏幕上,为了使用这个标准函数需要包含 stdio.h 头文件
#include <stdio.h>
int main(){
printf(“1\n”);
return 0;
}
\n --- 换位字符
可以利用占位符把双引号里面的数字转移到双引号后面
%d --- 占位符 --- 它应该和整数类型数字配合使用
printf(“%d\n”,1);
printf(“%d\n”,6-5); 1
printf(“6-5\n”); 6-5
双引号后面的数字可以是一个负责计算过程的结果
可以在双引号里使用多个占位符 %d ,这个时候应该在双引号后面提供多个数字,数字的个数和占位符的个数一样。
打印之前计算机会用双引号后面的数字依次替换双引号里面的占位符,替换完再打印。
程序中数字必须记录在内存里;
内存由大量字节构成,每个字节可以单独记录一个数字;
每个字节有一个编号,不同的字节编号不同,这个编号叫字节地址;
所有字节的地址从0开始向上递增;
可以把相邻字节合并成一个整体用来记录一个数字;
可以把内存里用来记录一个数字的所有字节称为一个存储区;
一个存储区只能记录一种类型的数字;
存储区的地址是它所包含的字节中最前面字节的地址。
程序中可以用变量代表存储区,对变量的操作就是对它所代表的存储区的操作;
所有变量必须声明,然后使用;变量声明语句可以用来声明变量。 int num;
/* 变量演示
*/
#include <stdio.h>
int main(){
int num; //变量声明
return 0;
}
变量声明语句可以让计算机为变量分配存储区
可以在一条语句中声明多个同类型变量 int num,num1;
变量赋值语句可以通过变量向存储区里放数字。
赋值语句的核心是赋值操作符(=)。
赋值操作符左边的内容必须可以代表存储区,这种内容叫做左值(变量是最简单的左值)
赋值操作符右边的内容必须可以当作数字使用。
赋值操作符可以把右边的数字放在左边的存储区。
初始化<-----int num=0,num1=0; //变量声明语句
num=10; //赋值语句
num=5+5; 效果一样
可以在声明变量的时候立刻对它赋值,这叫做变量初始化。
C语言里所有变量都应该初始化。
可以在程序中把变量当作数字是用,这个数字就是变量代表存储区里的数字。
变量即可以代表存储区也可以代表存储区里的数字,由环境决定。
存储区的地址也可以代表存储区。
可以在变量名称前面使用 & 符号计算出变量代表存储区的地址。
可以使用 %p 作为占位符把地址数据显示在屏幕上。
printf("&num是%p\n",&num);
变量可以代表一个固定数字。
int num=2,num1=5;
printf("%d + %d=%d\n",num ,num1,num+num1);
变量可以用来依次代表一组数字。
如果一组数字任何时候只会使用其中一个,每个数字的使用方法类似。可以用一个变量分别代表它们。
int num=1;
printf("%d\n",num);
num=num+1;
printf("%d\n",num);
C语言中一少部分内容需要记录在以“.h”作为扩展名的文件里,这种文件叫做C语言的头文件。
C语言中程序可以直接包含数字和加减乘除符号(乘法用*表示,除法用/表示)。
每一个计算步骤最后都必须用;结束,用;结束的一个计算步骤叫做一个语句。
C语言程序中绝大多数语句写在大括号里。 { 2+5;}。
C语言中大括号可以用来表示函数(目前可以把函数当作一组语句看待)。
C语言程序中每个函数都必须有名字,不同函数的名字必须不同。
C语言程序中必须包含叫做main的函数,它叫做主函数。
程序从主函数里的第一条语句开始执行,当主函数里的最后一条语句结束后整个程序结束。
C语言中允许函数在完成所有工作之后用一个数字表示它的工作结果,这个数字叫做函数的返回值。
主函数应该有返回值,如果返回值是0就表示程序希望计算机认为它正常结束,如果不是0就表示程序希望计算机认为她出了问题了。
main(){ 2+5;return 0;}
C语言里预先保留了几十个英文单词,它们叫做C语言的关键字。每个关键字都有专门的用途,不能随便使用。-----都是由小写字母构成的。
return --- 关键字 --- 用途 主要用于结束函数的执行(任何时候一定起到这个作用);
可用于指定返回值的数字。
计算机里根据不同数字在某个方面的区别把数字分成几组,每组叫做一个数据类型,每个数据类型都有自己的名字。
整数类型是一种数据类型,它的名字是 int ;
它里包含几乎不带小数点的数字。
程序中说有数字必须有类型;
不带小数点的数字默认都是整数类型的。
如果一个函数有返回值就必须把返回值的类型名称写在函数名称前。
C语言编码规范:
一行里最多包含一条语句; int main(){
同级别的语句最左边一列应该上下对齐; 2+5;
在合适的地方使用空格和空行。 return 0;
}
C语言中通常包含预处理指令,
预处理指令以 # 做开头不是以 ;做结尾。
标准C阶段遇到的预处理指令都可以把文件里的内容替换成其他内容。
#include --- 预处理指令 可以把一个头文件的内容包含到当前文件中。
在这个预处理指令中需要使用相对路径表示被包含头文件的位置。
如果把路径包含在 <> 里就表示以系统中预先规定好的一组目录依次作为起点查头文件;
如果把路径包含在 “” 里就表示首先以当前文件所在目录作为起点查找,然后再以系统中规定好的一组目录依次作为起点查找。
单行注释以 // 作为开头一直到结尾;
多行注释以 /* 作为开头, */ 做结尾。
C语言中大量使用名称区别不同内容;
这些名称叫做标识符;
标识符最好使用英文单词编写。
标识符的编写规则:
第一个字母应该是英文字母或下划线;
后面的字母可以是英文字母、下划线或者阿拉伯数字;
大小写不同的标识符是不同的标识符;
关键字不能作为标识符使用;
标识符没有长度限制,但计算机只会截取前面一部分使用;
标识符应该采用驼峰方式或者下划线方式书写。 Xi_an = XiAn
编译器可以把编写好的程序翻译成计算机能认识的格式。
gcc是Linux系统中C语言的编译器, gcc + 源文件名称 .c
Linux系统中C语言程序
4000
开发基本流程
使用Vi编写源文件和头文件 .c 和 .h 使用gcc把源文件翻译成计算机认识的格式(编译)
使用 ./a.out 作为命令执行得到的结果文件。
gcc编译器的工作步骤
处理所有的预处理指令
把第一步的结果翻译成计算机认识的格式(编译)
把上一步的结果合并成最终可以执行的文件(链接)
gcc选项介绍
-E 只处理预处理指令 gcc -E + 源文件名称
-C 只处理预处理指令和编译 gcc -C + 源文件名称
处理结果以 .O 作为扩展名的文件,这种文件叫做目标文件
-O 决定得到的结果文件名称 gcc oldemo.c -O oldemo
-std=C89/-std=C99 决定采用什么版本的规范进行编译
默认采用C89规范
C语言里提供了一组工具,它们叫做标准函数;
每个标准函数负责解决一个常见的问题;
有自己的名字;
可以在程序中编写函数调用语句使用标准函数。
printf标准函数可以把程序中的数字显示在屏幕上,为了使用这个标准函数需要包含 stdio.h 头文件
#include <stdio.h>
int main(){
printf(“1\n”);
return 0;
}
\n --- 换位字符
可以利用占位符把双引号里面的数字转移到双引号后面
%d --- 占位符 --- 它应该和整数类型数字配合使用
printf(“%d\n”,1);
printf(“%d\n”,6-5); 1
printf(“6-5\n”); 6-5
双引号后面的数字可以是一个负责计算过程的结果
可以在双引号里使用多个占位符 %d ,这个时候应该在双引号后面提供多个数字,数字的个数和占位符的个数一样。
打印之前计算机会用双引号后面的数字依次替换双引号里面的占位符,替换完再打印。
程序中数字必须记录在内存里;
内存由大量字节构成,每个字节可以单独记录一个数字;
每个字节有一个编号,不同的字节编号不同,这个编号叫字节地址;
所有字节的地址从0开始向上递增;
可以把相邻字节合并成一个整体用来记录一个数字;
可以把内存里用来记录一个数字的所有字节称为一个存储区;
一个存储区只能记录一种类型的数字;
存储区的地址是它所包含的字节中最前面字节的地址。
程序中可以用变量代表存储区,对变量的操作就是对它所代表的存储区的操作;
所有变量必须声明,然后使用;变量声明语句可以用来声明变量。 int num;
/* 变量演示
*/
#include <stdio.h>
int main(){
int num; //变量声明
return 0;
}
变量声明语句可以让计算机为变量分配存储区
可以在一条语句中声明多个同类型变量 int num,num1;
变量赋值语句可以通过变量向存储区里放数字。
赋值语句的核心是赋值操作符(=)。
赋值操作符左边的内容必须可以代表存储区,这种内容叫做左值(变量是最简单的左值)
赋值操作符右边的内容必须可以当作数字使用。
赋值操作符可以把右边的数字放在左边的存储区。
初始化<-----int num=0,num1=0; //变量声明语句
num=10; //赋值语句
num=5+5; 效果一样
可以在声明变量的时候立刻对它赋值,这叫做变量初始化。
C语言里所有变量都应该初始化。
可以在程序中把变量当作数字是用,这个数字就是变量代表存储区里的数字。
变量即可以代表存储区也可以代表存储区里的数字,由环境决定。
存储区的地址也可以代表存储区。
可以在变量名称前面使用 & 符号计算出变量代表存储区的地址。
可以使用 %p 作为占位符把地址数据显示在屏幕上。
printf("&num是%p\n",&num);
变量可以代表一个固定数字。
int num=2,num1=5;
printf("%d + %d=%d\n",num ,num1,num+num1);
变量可以用来依次代表一组数字。
如果一组数字任何时候只会使用其中一个,每个数字的使用方法类似。可以用一个变量分别代表它们。
int num=1;
printf("%d\n",num);
num=num+1;
printf("%d\n",num);
相关文章推荐
- C语言不通标准的限制
- Linux:C语言的标准和编译器
- C语言例题系列-------第二天
- 关于标准C语言的预定义宏
- 标准仿C语言 memset、memcpy、memmove函数(含C#版)
- 关于C语言的一些标准
- C语言及程序设计进阶例程-35 标准文件读写方法
- C语言提高之技术模型层次、学习标准、特点、内存四区、函数调用模型
- GCC 和标准C :关于 C语言变量定义
- 2016年11月21日学习总结----C语言标准
- C语言的C11 标准有哪些改进的地方?C11 为何不如 C++11 流行?
- c语言标准字符串函数的使用
- C语言的标准和一些基本的数据类型
- C语言:编写一个程序,它从标准输入(终端)读取C源代码,并验证所有的花括号都正确的成对出现
- Linux 中C语言如何清空标准输入流
- 【C语言提高45】【文件操作API】----- 标准文件的读写
- C语言的标准和Gcc遵循标准
- 读取文件,到标准输入流(c语言 和 c++版)
- 标准C语言<string.h>中的strlen() 与 VC++ 6.0 中的strlen()
- 关于C语言标准