社区
C++ 语言
帖子详情
int* 和char* 有没有区别
爆豆
2016-01-24 02:00:55
如题,在面试的时候遇到这个高层次的问题了,我当时直接说了个没啥本质区别,各位大神帮分析分析啊,谢谢了!
...全文
2621
14
打赏
收藏
int* 和char* 有没有区别
如题,在面试的时候遇到这个高层次的问题了,我当时直接说了个没啥本质区别,各位大神帮分析分析啊,谢谢了!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lin5161678
2017-05-19
打赏
举报
回复
引用
指针存的是地址 但使用
这种
基本不关心地址
纠正
引用
指针存的是地址 但使用
指针
基本不关心地址
lin5161678
2017-05-19
打赏
举报
回复
区别很多 说没区别是对指针了解太肤浅 说都是地址是片面 指针存的是地址 但使用这种基本不关心地址 用指针更多的是用到指针的 一元*操作 一元&操作 指针算术 (包括 自增自减 指针+int 指针-int等) 指针赋值 而对于这些操作 char* 和 int*的表现是完全不同的 你使用的
99%
是这些不同的东西 然后你说什么本质? 毫无意义
baidu_38223781
2017-05-18
打赏
举报
回复
1
char跟int指向同样地址,但解释不一样,char取1个字节即8位数据,递增更递减移动也是按8位,而int要根据实际硬件解释,一般32位电脑按4个字节即32位数据来读取解释,递增减移动也按32位进行,如果是单片机一般按2个字节既16位数据来读取解释,移动也按16位进行
赵4老师
2016-01-25
打赏
举报
回复
电脑内存或文件内容只是一个一维二进制字节数组及其对应的二进制地址; 人脑才将电脑内存或文件内容中的这个一维二进制字节数组及其对应的二进制地址的某些部分看成是整数、有符号数/无符号数、浮点数、复数、英文字母、阿拉伯数字、中文/韩文/法文……字符/字符串、汇编指令、函数、函数参数、堆、栈、数组、指针、数组指针、指针数组、数组的数组、指针的指针、二维数组、字符点阵、字符笔画的坐标、黑白二值图片、灰度图片、彩色图片、录音、视频、指纹信息、身份证信息…… 推荐使用WinHex软件查看硬盘或文件或内存中的原始字节内容。
imGala
2016-01-25
打赏
举报
回复
int* p 和char* q的值都是1个地址。 二者指向的类型不同。 p+1和q+1的效果不同,p的值是原值加4(若sizeof(int)是4时),而q的值是原值加1。
家人是最好的礼物
2016-01-25
打赏
举报
回复
没区别,都是指向一个地址; 有区别,不同类型指向的空间大小不同。
ri_aje
2016-01-25
打赏
举报
回复
类型不一样。
清泉流
2016-01-25
打赏
举报
回复
两个都是指针变量,字节都是一样的。但是int*表示的是指向int类型数据,在使用时操作是int型数据,指向的内存是int型的内存大小,一般为4,;char*表示指向的是char类型的数据,使用时操作的是一个char字符,指向的内存的字节是1.
Anooyman
2016-01-24
打赏
举报
回复
本质上都是存储东西,地址也都是4位。 但是指向的类型不一样,一个是整型,一个是字符型,所以运算不一样。 其他应该差不多吧
paschen
版主
2016-01-24
打赏
举报
回复
看你怎么定义本质了 他们都是指针,都可以使用指针的运算符,都有相同的大小 但是他们指向的类型不同 另外char*指针可以这样初始化:char*p = "xxx"; 但int*不是
yshuise
2016-01-24
打赏
举报
回复
int指针指向int内存块 char指针指向char内存块
苏叔叔
2016-01-24
打赏
举报
回复
肯定有区别,类型不一样。 关于指针
http://blog.csdn.net/zhangxiangdavaid/article/details/37885275
zwfgdlc
2016-01-24
打赏
举报
回复
从内存角度上来说没区别,都是指向一块内存区域
sdghchj
2016-01-24
打赏
举报
回复
指针是有类型的,当然有区别。
WAV PCM声音转换工具库
PCM/WAVE工具库,提供各种PCM互相转换,PCM到WAVE转换 提供源码,价格面议 unsigned
char
linear2alaw(short pcm_val);;;;;;;; short alaw2linear(unsigned
char
a_val);;;;;;;; unsigned
char
linear2ulaw(short pcm_val);;;;;;;; short ulaw2linear(unsigned
char
u_val);;;;;;;; unsigned
char
alaw2ulaw(unsigned
char
aval);;;;;;;; unsigned
char
ulaw2alaw(unsigned
char
uval);;;;;;;; short swap_linear (short pcm_val);;;;;;;;
int
alaw2ulawfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
ulaw2alawfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
linear2alawfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
alaw2linearfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
linear2ulawfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
ulaw2linearfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
linearswppingfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
alaw2wavfile(
char
*InFile,
char
*OutFile);;;;;;;;
int
ulaw2wavfile(
char
*InFile,
char
*OutFile);;;;;;;; redpower2004@21cn.com 另外不会用的请不要随便评论.谢谢
如何区分大端和小端以及
int
*,
char
*,short*的本质
区别
/*如何区分大端和小端以及
int
*,
char
*,short*的本质
区别
*/ /*我们知道
char
,short,
int
,指针,long 在16位平台上
char
8位, short 16位,
int
16位, 指针 16位, long 32位, 在32位平台上
char
8位, short 16位,
int
32位, 指针 32位, long 32位, long long 64位...
如何理解
int
*(*a[5])(
int
,
char
*);
int
*(*a[5])(
int
,
char
*); 拆开来分析: typedef
int
* (*f)(
int
,
char
*); f a[5]; 所以a是个5个元素的数组,每个元素为函数指针. 可用代码验证: #include #include
int
* (*a[5])(
int
,
char
*);
int
*foo(
int
n,
char
*s) {
int
*p;
【C++】
int
转
char
*、
char
*转
int
、float转
char
*、
char
*转float方法汇总及踩坑指南
本博客提供C++不同数据类型转换的踩坑记录。
int
*(*a[5])(
int
,
char
*)
int
* 表示是一个
int
型指针;(*a[5])(
int
,
char
*)中的a[5]表示是一个有5个元素的数组,而(*)(
int
,
char
*)则表示指向一个函数的指针,该函数有两个参数,第一个参数为
int
型,第二个是字符指针型,结合前面部分,表示这个函数的返回类型为
int
型,所以(*a[5])(
int
,
char
*)为5个返回类型为
int
型函数组成的数组;整个结合起来
int
* (*a[5])(i...
C++ 语言
65,186
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章