【C语言】复习~数组和指针

数组和指针


1.字符指针

char*

使用方法一:

使用方法二:

这里本质上是把常量字符串的首地址放到了指针变量pstr里面

看下面的面试题

str3和str4指向的是同一个常量字符串,c/c++会把常量字符串存储到一个单独的内存区域,

当几个指针,指向同一个字符串的时候,他们实际上会指向同一块内存,但是用相同的常量字符串去初始化不同的数组的时候就会开辟出不同的内存块,所以str1和str2相同,str3和str4不同

2.指针数组

指针数组:存放指针的数组

3.数组指针

p1是指针数组

p2是数组指针

因为[]括号的优先级大于*号,所以p1是数组 而不是指针

&数组名VS数组名

在这里他俩打印的地址是一样的,但本质还是不一样的,再看下面

实际上,&arr表示的是数组的地址,而不是数组首元素的地址

本例中 &arr 的类型是: int(*)[10] ,是一种数组指针类型

数组的地址+1,跳过整个数组的大小,所以 &arr+1 相对于 &arr 的差值是40

数组指针的使用


这里的int (*arr)[5]等价于 int[3][5]

4.函数指针

5.相关笔试题





















相关推荐
青草地溪水旁5 分钟前
设计模式(C++)详解——策略模式(2)
c++·设计模式·策略模式
鄃鳕12 分钟前
高并发日志项目中,C++IO的使用
开发语言·c++
点云侠21 分钟前
PCL 生成缺角立方体点云
开发语言·c++·人工智能·算法·计算机视觉
9毫米的幻想27 分钟前
【Linux系统】—— 程序地址空间
java·linux·c语言·jvm·c++·学习
71-330 分钟前
C语言——循环的嵌套小练习
c语言·笔记·学习·其他
自信的小螺丝钉32 分钟前
Leetcode 295. 数据流的中位数 堆
leetcode·
天选之女wow1 小时前
【代码随想录算法训练营——Day27(Day26休息)】贪心算法——455.分发饼干、376.摆动序列、53.最大子数组和
算法·leetcode·贪心算法
MediaTea1 小时前
Python 库手册:keyword 关键字查询
开发语言·python
未知陨落1 小时前
LeetCode:84.完全平方数
算法·leetcode·动态规划
睿思达DBA_WGX1 小时前
使用 python-docx 库操作 word 文档(1):文件操作
开发语言·python·word