社区
C++ 语言
帖子详情
char *p 和 (char*) p有区别吗
lin_style
2006-07-28 11:41:14
RT
一个排序函数中见到的
...全文
346
6
打赏
收藏
char *p 和 (char*) p有区别吗
RT 一个排序函数中见到的
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
折腾_苏州
2006-07-28
打赏
举报
回复
楼上说的在理:
char *p;定义一个字符指针p;
(char *) p 是把变量p强制转换成char *类型, 之前p可以是其他类型如 int ,void 型
adintr
2006-07-28
打赏
举报
回复
区别大了,
一个是变量定义,一个是类型转换
唐巧
2006-07-28
打赏
举报
回复
char *p 和 (char*) p的区别在于:
char *p是定义一个字符指针。也就是在定义变量。
(char *) p 是把变量p强制转换成char *类型。
ckp
2006-07-28
打赏
举报
回复
没有区别
唐巧
2006-07-28
打赏
举报
回复
int compare(const void*a,const void *b){
return strcmp((char*)a,(char*)b);
}
以上是你的部分源码,可以看到,变量a,b的类型为 const void *
而strcmp函数需要的两个参数类型必须是char *类型,所以这里用强制类型转换把
void * 转换成char *
即把指行一个空类型的指针转成一个指向字符类型的指针。
如果你把char *去掉的话,编译应该会报出类型不符的错误。
lin_style
2006-07-28
打赏
举报
回复
#include<iostream>
#include <stdlib.h>
#include <string>
using namespace std;
int compare(const void *a,const void *b);
char list[5][4]={"cat","car","cab","cap","can"};
int main()
{
qsort((void*)list,5,sizeof(list[0]),compare);
for(int i=0;i<5;i++)
cout<<list[i]<<endl;
return 0;
}
int compare(const void*a,const void *b){
return strcmp((char*)a,(char*)b);
}
源码
对 return strcmp((char*)a,(char*)b); 中的(char*) a 有点迷茫~
const
char
*p,
char
const *p和
char
*const p
区别
(面试题常见)
先看第一种,先看p,根据优先级它和*结合,是指针,指向
char
类型,但是
char
前面有一个const修饰,所以p所指向的内容为const类型不可修改。 第二种:由于没有const *的运算,若出现const *的形式,则const...
const
char
*p,
char
const*p和
char
* const p的
区别
//由于没有const *的指针类型,所以const修饰
char
*p,和const
char
*p的效果一样
char
* const p;//const直接修饰p,表示p无法修改,但是指针指向的内容可以修改 总而言之,由const直接修饰的无法更改 ...
char
*const p,const
char
*p,
char
const *p和
区别
(容易混淆)
char
*const p const
char
*p
char
const *p 如果学得不够深入的话,很难分清这些
区别
。 我们来看第一种
char
*const p 我们很容易能看到const 修饰的是p即p是不能被修改的。 所以p指向的内容是可以修改的,但是改变p...
const
char
* p 和
char
* const p 的
区别
// const作用在
char
上,声明一个指向字符或字符串常量的指针p,p可以修改而p所指向的内容无法修改。
char
const *p;// 同上
char
* const p;//const作用在p上,声明一个指向字符或字符串的指针常量,即p不可以...
const
char
*p,
char
const *p和
char
*const p的
区别
搜索博文/帖子/用户 登录const
char
*p,
char
const *p和
char
*const p
区别
(面试题常见) 原创2018-07-27Lawrence_121 码龄3年关注请看下面三种定义:const
char
*p;
char
const p;
char
* const p;...
C++ 语言
64,647
社区成员
250,476
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章