请教char*ch ;和char(*ch);有什么区别
请问char*ch ;和char(*ch);有什么区别?
请问char*ch ;和char(*ch);有什么区别?
------解决方案--------------------
你看以下数组指针和指针数组就明白了
------解决方案--------------------
简单说就是
1。存储字符串的地址,new后存储值
2、存储char数组地址
------解决方案--------------------
原因很简单啊,你的c数组不是动态的啊,释放栈上的空间是不允许的
char(*b)用于指针数组
------解决方案--------------------
。。。。
如果按你的写法 char*ch ;和char(*ch);
没区别。。。。
如果你是想问 那些什么数组指针,指针数组,函数指针之类的 请去搜索
深入理解C语言指针的奥秘
------解决方案--------------------
c[3] 定义在栈里了,是不能被delete的。
delete和new是配对出现的。
malloc和free同样也是。
------解决方案--------------------
除了优先级以外没有区别,char *ch改成cha (*ch)后指向的空间地址不会发生任何变化,并且分配的堆内存的大小也没有变化,实质是一样的,不同的叫法而已。
请问char*ch ;和char(*ch);有什么区别?
------解决方案--------------------
你看以下数组指针和指针数组就明白了
------解决方案--------------------
简单说就是
1。存储字符串的地址,new后存储值
2、存储char数组地址
------解决方案--------------------
原因很简单啊,你的c数组不是动态的啊,释放栈上的空间是不允许的
char(*b)用于指针数组
------解决方案--------------------
。。。。
如果按你的写法 char*ch ;和char(*ch);
没区别。。。。
如果你是想问 那些什么数组指针,指针数组,函数指针之类的 请去搜索
深入理解C语言指针的奥秘
------解决方案--------------------
c[3] 定义在栈里了,是不能被delete的。
delete和new是配对出现的。
malloc和free同样也是。
------解决方案--------------------
除了优先级以外没有区别,char *ch改成cha (*ch)后指向的空间地址不会发生任何变化,并且分配的堆内存的大小也没有变化,实质是一样的,不同的叫法而已。