问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言中char *a[ ]什么意思,他和char (*)a[ ]有什么什么区别?

发布网友 发布时间:2022-04-30 02:40

我来回答

5个回答

热心网友 时间:2023-10-08 20:02

两者区别如下:

一、”读“”写“能力

char*a="abcd";此时"abcd"存放在常量区。通过指针只可以访问字符串常量,而不可以改变它。

而char a[30]="abcd";此时"abcd"存放在栈。可以通过指针去访问和修改数组内容。

二、赋值时刻

char*a="abcd";是在编译时就确定了(因为为常量)。

char a[30]="abcd";是在运行时确定

三、指向地址所存储的值不同。

对于char**p1,*p1的类型为char*型,而**p1的类型才是char型。

对于char*类指针p2,*p2就是char型。

char*a="abcd";存于静态存储区。在栈上的数组比指针所指向字符串快。慢

char a[30]="abcd";存于栈上。快。

四、内存分配方式

内存分配有三种:堆区和栈区、静态存储区。功能不同;使用方式也不同。

1、栈:就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 

2、堆:就是那些由new或malloc分配的内存块,在不适用时,要手动用delete或free来释放内存区域。

3、静态存储区:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。它主要存放静态数据、全局数据和常量。

但是,良好的编程习惯是:如果某动态内存不再使用,需要将其释放掉,并立即将指针置位NULL,防止产生野指针。

参考资料:

百度百科——atof

热心网友 时间:2023-10-08 20:03

含义是一样的。其实数组也是指针。都是声明了a这个char*类型数组。虽然有语法错误,但是意思是那样的。

热心网友 时间:2023-10-08 20:03

char *a[]一般用于函数中形参的声明,特别只用于一维数组;char(*)a[]不明白什么意思,难不成是将a数组强制转换成字符型???只是猜测,不要多想呵。

热心网友 时间:2023-10-08 20:04

char* a[]:a首先是个数组,数组中的每个元素是char*类型的,也就是每个元素是一个指向char类型的指针,至于char(*)a[],圆括号一般是用作强制类型转换的,这种写法没有见过,编译器应该分析不出这个语法,会报错

热心网友 时间:2023-10-08 20:05

char *a[]表示的是数组a[]是一个指向char的指针类型数组,相当于a[]里面的每一个元素都实际值都是一个指向字符串的指针(即存储某个字符串的首地址)

后面这个你应该要问的是char (*a)[]吧,不然的话就和第一个一样了
char (*a) [N]表示的是指向一个元素为N的字符串数组的指针,说白了就是一个数组指针(指向数组的指针)。这个和函数指针有点像 int (*p) (int,int),表示指向返回值为int,并且含有2个int变量的函数
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 年终会活动策划方案 深度解析:第一财经回放,探索财经新风向 逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 印泥用什么量词? 越来越热了,吃些什么蔬菜水果可以降暑啊 交换机假死后学校所有不同个交换机下电脑全部不上得网,怎办? 红色印泥与蓝色印泥有什么区别?? 如何解决交换机端口“假死” 印泥是用什么材料做的?为什么有不同颜色? 热天到了吃什么菜好呢? 印泥和印台有什么区别?印台是干什么用的 这个手势啥意思 天热吃什么好。 炎热干燥的夏天,应该吃什么菜 现在天气炎热,吃什么都感觉胃口不好,你有什么好的菜品推荐吗?_百度... 请问印泥是什么做的?原材料都有什么? 说一下什么是印泥?印鉴?印章? 天气热吃什么菜菜谱 古代印泥是什么材料 “印泥”是什么东西,好吃吗? 天气热做什么菜好? oracle中,公用的子程序在什么中实现 电脑怎么看是什么处理器 思科交换机端口假死,如何让它假死后一分钟内端口自启动。 我不知道我的是什么龟 c语言中出现“char *a”是什么意思? 三伏天吃什么菜比较好? 局域网内一交换机,两三天后就Ping不通,信号显示连接正常,必须把交换机断电水晶头重新插后网络才正常。 乌龟一词为什么都用来骂人 (char*)a是什么意思 夏天适合吃什么菜 char *a[N] 和char (*a)[N]有什么区别? 最近交换机过段时间就自动断网,重启就又好了,过段时间又不行了!~ char *a[]="abcd";为什么是错了? 夏天天气炎热,上火,吃什么菜好! 我的巴西龟不吃东西老是伸长脖子张嘴 ,急 公司电脑上不了网,重启交换机就好了 char *a[] 和(char *)a[]的区别 局域网共享问题(网络连接点击不正常,没有权限访问导致死机)是否与交换机有关 电脑死机带动整组交换机掉线 char *a[] = { "hello", "world" }; char **p = a; 逻辑是怎么样的啊?a,p是什么,p[0]a[0]呢? GPS支架的介绍 我家乌龟最近老叫 跟小猫一样