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.函数也可以局部定义


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本方法。编译原理不仅是计算机科学理论的重要组成部分,也是实现高效、可靠的计算机程序设计的关键。本文将对编译原理的基本概念、发展历程、主要内容和实际应用进行详细介绍编译原理是计算机专业的一门核心课程,旨在介绍编译程序构造的一般原理和基本

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值