cstudy 6.6

6.6
1.指针续:
先右看再左看 *q[5] (*q)[5] 分辨指针数组与数组指针
p++ ++p等表示的其实是p或p+1的值的副本

int b[2][3]={1,2,3,4,5,6};
int* p2[2] = { b[0],b[1] };//赋b要报错,类型不匹配
int (*p3)[3]=b;
printf("%d\n", p2[1][2]);//3

2.运算符续:
 ? :  条件运算符  为真返回前项 为负返回后项

int a=10,b=100;
int c=a<b?a:b;//c=10

3.优先级续:
复合运算符后视为整体

int a=1,x=0,y=0;
a += y==x;//a=2

4.输入与输出:
字符输出 putchar() 单个字符输出 与ASCII码对应

printf()  d 十进制;o 八进制;x 十六进制;u 无符号十进制;f 浮点数;c 字符;s 字符串;%% 百分号本身
修饰符 %4d 数据宽度; %#x 加前缀0x ; %.2f  小数点后的位数 ;- 左对齐;+ 符号;l 单精度或双精度输出

getcahr() 从键盘读一字符并返回该字符

scanf() 
%c会读取空格、转义字符
遇空格、tab、换行、非法输入结束
scanf("%[^\n]%*c", str)读取需要空格的字符串,%*c吸收换行*抑制符表示不赋值
getchar()吸收输入遗留
scanf缓冲区解析:
https://www.cnblogs.com/yhjoker/p/7530837.html

gets()接收字符串 换行为结束标志 最后自动加\0


5.全局变量
目前可理解为:声明在函数外的变量,储存在数据段中
五大内存:栈 堆 数据段 代码段 BBS

6.变量存储类型
auto 局部变量自动缺省,储存在内存条中
register 储存在寄存器中此时无指针概念,编译时也有可能在内存条中

总结:明晰二维数组中a[i]的含义一维数组名;数组指针 指针数组 指针指针;++ *在表达式中感觉从右往左看 优先级模糊

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jun531921

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值