C语言小笔记(一)

一、C预处理

二、指针

语句

cpp 复制代码
p=&c;

将变量c的地址赋值给变量p,称p为"指向"c的指针。

(1)区分C语言中的运算符&与*

cpp 复制代码
int x=1,y=2,z[10];
int *ip;/*ip是一个指向int型数据的指针变量*/
ip=&x;/*将变量x的地址赋值给ip,或者等价地说成使ip指向x*/

y=*ip;/*将ip指向位置的内容赋值给变量y,现在y=1*/

*ip=0;
/*注意,现在ip指向的存储器单元内的内容被赋值成为0
* 也就是说现在x的值等于0
*/

ip=&z[0];/*现在把变量z[0]的地址赋值给ip*/

(2)指针ip的声明

cpp 复制代码
int *ip;

(3)

cpp 复制代码
y=*ip+1;
/*将*ip指向对象的值取出并加1,然后再将结果赋值给y*/


*ip+=1;
/*将*ip指向的对象的值取出并加1*/
等价于:
(*ip)++;

(4)指针当作变量直接使用

cpp 复制代码
//*指针iq指向另一个整型*/
iq=ip;
/*将把ip中的值拷贝到iq中,这样iq也指向ip指向的对象*/

三、指针与函数参数

(回看上面指针变量s声明的格式......)

四、指针与数组

在函数定义中,形式参数:

cpp 复制代码
char s[];

cpp 复制代码
char *s;

是等价的。

五、地址算术运算

六、多维数组与指针数组

相关推荐
呜喵王阿尔萨斯2 分钟前
C/C++ const -- 多义混乱
c语言·开发语言·c++
__log2 分钟前
幂等性设计:从“重复提交“到“稳如磐石“的系统防护
java·开发语言·spring boot
spider_xcxc3 分钟前
Helm 部署 K8s 集群完整笔记
java·开发语言·kubernetes
海清河晏1114 分钟前
Qt实战:从零构建美化登录界面
开发语言·c++·qt
一只小灿灿14 分钟前
C++ 各类特殊符号、运算符
开发语言·c++
Fu_Lin_17 分钟前
《Qt嵌入式从零基础到精通》前言与阅读指南
开发语言·qt
名字还没想好☜21 分钟前
Go 的 select 实战:超时、非阻塞收发与优雅退出的三个套路
开发语言·数据库·golang·go·并发
geovindu22 分钟前
java: Backtracking Algorithm
java·开发语言·windows·后端·算法·回溯算法
caimouse22 分钟前
MM 学习笔记 10:页面文件与系统加载器
笔记·学习·reactos
一只小菜鸡..27 分钟前
南京大学 操作系统 (JYY) 学习笔记:Hello, OS World! (程序的机器视角)
java·笔记·学习