首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >char *token[32]与char token[32]的区别

char *token[32]与char token[32]的区别
EN

Stack Overflow用户
提问于 2012-12-21 06:29:46
回答 2查看 298关注 0票数 1

这听起来可能非常愚蠢和愚蠢。我很难理解

代码语言:javascript
复制
char *token[32];

代码语言:javascript
复制
char token[32];

char token32声明token为字符数组,可包含32个字符。

在char *token32的情况下,token包含32个字符pointers.What,这些指针指向吗?或者更具体地说,为指针所指向的内容分配内存是用户的责任。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-21 06:31:22

代码语言:javascript
复制
char *token[32];

是由32个字符指针组成的数组。即,该数组可用作:

代码语言:javascript
复制
token[0]=p1;
token[1]=p2;
.....

其中p1和p2可以是char[]char*类型。

这篇文章可能会帮助你理解一些更相关的事情,而不是问的问题:

C pointer to array/array of pointers disambiguation

票数 4
EN

Stack Overflow用户

发布于 2012-12-21 06:31:22

现在,

char *token[32]将token声明为指向可包含32个字符的字符数组的指针。

不是的。它将token声明为32个字符指针的数组。换句话说,在第一种情况下,token可以容纳32个字符,在第二种情况下,它可以容纳32个指针。

如果您想声明一个指向包含32个字符的字符数组的指针,您可以这样写

代码语言:javascript
复制
char arr[32];
char (*token)[32] = &arr;
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13981597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档