字符串数组指针变量的地址关系
deque
是一个指向字符串数组的指针变量(char **deque
)。下面我用图示来介绍下,字符串数组的相关概念。
首先定义一个字符串数组指针
char **deque;
然后再申请N
个数组空间
deque = (char **)malloc(N * sizeof(char *));
此时deque
就是一个拥有N
个字符串指针的数组。然后向第一个元素保存字符串dword
.
deque[0] = "dword";
此时调试数组,查看内存为:
首先deque
是一个字符串数组指针变量,保存的是字符串数组首元素的地址。在这里可知
deque = 0xb7b1b0;
解引用到此元素,此元素就是deque[0]
。而deque[0]
保存的是字符串dword
的首字符地址0xb74040
。
其实这样声明一个N
空间大小的字符串指针数组,也相当于
char *deque[N];
不过不如第一种声明方法灵活,只适合一开始就固定好数量的前提。
本文作者:上山砍大树
本文链接:https://www.cnblogs.com/shangshankandashu/p/18743295
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现