我的C语言笔记中级

发布 2021-05-12 03:57:28 阅读 8856

函数部分。

1函数自己调用本身,这叫做递归。

2注意建立自己的函数库。

3如果有大量数据需要传递,可以用数组与指针。

4实参的数量必须与形参相等,它们的类型必须匹配。

5int func

是合法的。6函数返回值可以是除数组以外的的类型,也可是void类型,表示没有返回值。

#include <>

2) main( )

11) a=0;b=0;c=0;d=0;

17) a=0;b=0;c=0;d=0;

在第9行变量a,b,c有效;在第11行,变量a,b有效;在第15行,变量a和d有效,在第17行,只有变量a有效。

定义体在大括号外是窗帘有效,定义体在大括号内是本括号内辐射定义有效。

8同一个语句块内不可以定义同名变量,不同语句块内可以定义同名变量。

9 嵌套语句的定义了同名变量,各有各的存储空间,彼此毫无瓜葛。

10主调函数和被调函数定义的同名变量不会相互干扰。

11在与main( )平行的位置定义的变量在程序的所有位置均有效,是全局变量。在其他语句块内定义的变量被称为局部变量。

12全局变量从程序运行起即占据内存,在程序整个运行过程中可随时访问,程序退出时释放内存。局部变量在进入语句块获得内存,仅能由语句块内的语句访问,退出语句则释放内存。

13局部变量在定义时不会自动初始化,全局变量在程序员不指定初始化为零。

14++和—作为前缀运算符或后缀运算符使用时,对变量而言,运算都是一样的,但对增1和减1表达式而言,结果却是不一样。注意自己视为从左往右编译。

15变量的存储类型auto(默认):自动体现在自动申请内存,退出时自动释放内存。

auto int a,b,c=0;

16容量有限但速度极快的存储器register

register 类型名变量名变量名。

17 static 类型名变量名 static定义的据不变量它仍然尽在语句块内有效,但其空间自第一次进入语句块时分配且初始化,一直到程序完全退出才释放,所以其值都够保持。静态变量要初始化,否则自动初始化为1.

18头文件里对全局变量的声明要加extern,用以说明该变量为外部变量,也就是说这个变量的内存是在其他模块分配的。(extern=get from 外部)

19c语言如何建立头文件。

20模块内经常包含一些不需要模块的调用者使用的函数和全局变量。只要在定义它们时加上static,就能保证尽在该模块内可用。

21c语言172面有很不错的程序。注意浏览。

22c中运行项目文件项目文件格式很简单,把所有的源程序罗列其中即可。必须保证与项目有关的所有文件(头文件、源程序文件和项目问ian)都在turbo c运行的当前目录下才能编译。

23错程序(3处0e <>

int factorial(int x);

main()

int x;

while(1)

int factorial(int x)

int i,result;

for(i=1;i<=x;i++)

result*=i;

return result

1精确定义钱就使用了factorial函数中的result,精确定义就是给变量一个确切的值。记得赋初值。

单步执行调试到if语句,按ctrl+f7弹出监视窗口watch窗口,输入某变量,可显示其当前有效的变量值。

trace into就是跟踪到自己的函数内部。

输入8和-2都会得到错误的结果,小于-1的负数的问题源自流程错误,大于7的整数错误源自整数运算溢出。

我的C语言笔记高级

数组。1排序分交换法,选择法,插入排序,冒泡法,快速排序法。2交换法第i轮比较中,第i 1个数和后面所有的数都有一次比较,每进行一次比较,若后面的数大酒交换位置,每轮最多交换n i次很耗资源。第一轮 84 83 88 87 61不交换。交换。不交换。不交换。第二轮 88 83 84 87 61交换。...

C语言笔记

第一课时。c语言标准格式。include vidomain 以 开头的语句称为预处理指令。include语句不是必须的,但是如果一旦有该语句就必须把它放在文件开始处是standared input output header的缩写standared 标准input 输入output 输出header...

C语言笔记

c语言算法和数据类型。整型。基本类型 字符型注释 基本类型的特点是其不可实型 单精度型以再分解为其他类型双精度型数组型。数据结构 构造型 结构体型共用体型指针型空类型。一 常量。define 语句不以分号结尾,它可以放在源 的任何位置。不过在定义常量时,只有在它定义后的源 中才有效。是一个修饰符,在...