C语言总结(1)

1.函数返回值:不能是一个局部变量的数组,因为函数结束后会被摧毁,可以使用指针赋值,再作为返回值。
2.有一个数组a[12][31] ,a[4]表示a[12][31]二维数组的第五行,sizeof a[4]=(int)*31。
3.字符与字符串:单引号括起来代表一个整数,而用双引号括起来的代表一个指针。
4.运算符优先级
(1)逻辑运算符>关系运算符
(2)算术运算符>移位运算符>关系运算符
在这里插入图片描述
5.switch语句:在case语句后需要添加break语句,否则会一直执行剩下的case语句。
6.else悬挂问题:在编译器中else会自动与最近的if结对,在使用要记得加大括号。
7.结构体
struct{
int b[4];
double x;
}c[17];
声明了c是一个有17个元素的数组,每个元素都是一个结构体,包括一个4位的int型数组和一个double型的数。
8.<string.h>库的使用
(1)strcat(r,s)将s数组连接到r数组之后,主要确保r数组足够大,避免出现数组溢出的情况,造成程序跑飞。
(2)strcpy(r,s)将是数组内容复制到r数组中,要注意r数组大于s数组。
(3)memcmp(buf1,buf2,n);n代表比较前几位
当buf1<buf2时,返回值小于0;
当buf1==buf2时,返回值=0;
当buf1>buf2时,返回值大于0;
(4)mencpy(buf1,buf2,n);把buf2的值复制到buf1中,n表示复制到前几位。
(5)strlen()求字符串长度,遇到‘\0’则结束
(6)此处可以使用malloc和free进行动态内存申请,但malloc和free必须成对出现。
9.数组和链表的区别
(1)数组申请内存一般是连续的空间,需要提前申请占用内存的多少,可以用关键字sizeof直接读出。优点:可以根据地址直接读出数据,随机可读性强。缺点:增加/删除数据麻烦。
(2)链表是不连续的内存空间,通过指针连接起来。优点:增加/删除数据容易。缺点:查找数据效率低,需从第一个开始。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值