- 博客(5)
- 收藏
- 关注
原创 C/指针进阶
输出结果:c是c[0]的地址,c代表的内容*c即c[0]里面存的内容,也是一个指针,指向字符型数据首地址。对于二维数组a[2][3],a=&a[0]=&a[0][0]。不能这样指,因为c与&c[0]以及&c[0][0]一样,如果chr=c,*chr='a',但实际上*chr指向的还是地址,关键就是二维数组的 &c[0]和&c[0][0]地址一样,相当于二维指针中间少了一维。1.指针数组:变量类型 *指针[n],这种形式来定义,比如char *c[3]。如图表示c c[0]与字符型数据的关系。
2024-06-19 16:57:54
310
原创 C/ 指针
p=&a[i] (*(a+i),a[i],*(p+i)p[i]等价)。首先用a[10]本来就是错误,因为数组的长度为10,但是表示的最后面的元素为a[9],其次a[i]代表的是数组中的一个元素,因此不能在%s输入输出字符串时使用。对于y=*p++这种赋值语句,先把p所指向的变量x值赋给变量y,再将指针值加1个数据类型对应字节,此时指向的不是x,(一开始指向x=2,现在变成1703896)。*p=*p+1、++*p、(*p)++这三种都是对指针对应变量值进行加一,地址并不改变,变量值加一。
2024-05-23 23:03:20
425
原创 C/ 数组
1.对if continue与if break的解释;2.scanf输入字符串带有空格情况;3.将一个数组放入新数组的操作;4.静态数组的说明。
2024-05-19 22:36:35
501
原创 C/函数与变量学习
符号,因为是一个整体。第一次运行这个调用函数时,a为1,然后再++后为2,第二次再运行时候,带入上一次运行结果a为2,进行运算,再++后为3。运行到调用函数后,x1被赋值为10,如果不定义全局变量,x1为10只能出现在调用函数里面,出不来的,定义全局变量后,x1实现共用,因此输出结果为10,20,10,40。1.有返回值函数,返回一个固定值,也可结合if等语句,返回多个值,但最终输出的只有一个固定值。2.无返回值函数,因为不知道要返回什么值,因此不能说明函数类型,定义时候用void。
2024-05-12 15:29:47
344
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人