C语言笔记

背景:面试jg单位需要懂一些嵌入式的内容,嵌入式大多是C/C++,所以学了一些C的内容

C语言规范

C自上而下编译,所以需要先定义函数,再声明调用
1.主函数被自动调用
2.返回值给调用的程序
3.主函数必须有返回值,且是int
4.标识符包括:变量,函数名,函数参数,其它实体,必须先声明后使用。区分大小写

C语言类型

char, short, int, long, long long
float至少6位有效数字, double
char长度不随处理器改变而变化,其它会变
修饰数据类型:signed, unsigned, long,可以修饰int
unsigned, signed修饰char
long 修饰 double
register存储类型说明符,只能用于局部变量和函数形参,存储到寄存器中。不能进行编址(不能&),只能定义1-2个,因为寄存器个数限制及没有地址
auto存储类型说明符,
sizeof()编译时求值,返回操作数对应的数据类型的字节数。
逻辑运算符:&&,||, !
位运算符:&, |, ^, ~, >>, <<只对char或int型数据
跳转:return, break, continue, goto

A的ascii是65, a是97, 0是48, 空格是20

C源文件运行过程

编辑,编译,链接,执行
编辑:程序代码录入,生成源程序.c,程序设计语言。可能会有语法错误。
编译:语法分析查错,翻译生成个目标程序需.obj,机器语言。可能有语义错误
链接:与其它目标程序或库链接装配,生成可执行程序.exe,机器语言
执行:


ARM 推荐参数不超过4个,可以直接用寄存器传值,超过4个要用堆栈进行传值
推荐先再.h头文件中声明变量,在.c源文件中做实现,可以实现方法实现的隐藏
putchar()的作用是向终端输出一个字符
getchar()是只能接收一个字符
int a[][] 不能做形参,因为a是指向int[]的数组指针,下标大小不确定,需要指定一维数组的大小,所以int[][8]可以,并且可以直接用二维数组名做其实参。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值