Linux C编程一站式学习第三章

1.改变计算机存储单元里的数据或者做输入输出操作都算Side Effect

2.头文件声明我们需要用到的库函数

3.引用了math.h的库则使用Linux编译的时候gcc text3.c -lm指明路径,gcc默认指明libc.so库文件中,对应的是-lc,-lm指明libm.so,多线程的C程序依赖于libpthread.so

4.$?是Shell中的一个特殊变量,表示上一条命令的退出状态,echo表示打印


1.函数原型:包含函数名称、参数及其个数、返回值类型;

eg.void threeline(void);

 以上只能成为函数声明,只有带函数体的才能成为函数定义

而函数原型,不管包不包括函数体,均要在使用前出现

2.对于old style c,由于声明不包含函数的参数和个数,则对函数不做相应的语法检查,容易引入bug,则不倡导使用

3.void 对函数的参数类型,返回值,函数的指针类型进行声明

4.有时候我们把函数叫做接口(Interface),调用函数就是使用这个接口,使用接口的前提是必须和接口保持一致

EXE.

这个例子里面如果写printf函数将i,j打印出来,结果还是i,j为1,2.原因是参数分为形参和实参,而increment(i)增加1的部分是在increment(x)中的x的存储空间,因此,发生改变的是形参的存储空间而不是实参i和j


1.全局变量:全局变量定义在所有的函数体之外,易导致某个局部函数的读写顺序出错,易出bug,因此能用局部变量的就不用全局变量

2.局部变量可以用类型相符的任意表达式来初始化,而全局变量只能用常量表达式(Constant Expression)初始化,因为全局变量必须在编译的时候就已经得到初始值,如果全局变量的定义包含需要调用的函数,则必须在执行的时候才能得知其初始值

3.bebug的时候不要被表面的值蒙蔽,把必要条件当成充分条件

4.函数也可以局部定义


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值