社区
C++ 语言
帖子详情
指针指向的类型为何不能随意改动!!
78815
2004-01-30 04:58:57
如题,好象有点不明白,有点知其然而不知其所以然的味道???
...全文
77
10
打赏
收藏
指针指向的类型为何不能随意改动!!
如题,好象有点不明白,有点知其然而不知其所以然的味道???
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
myte
2004-01-30
打赏
举报
回复
同意:dnawym(NoGame)和pacman2000(pacman)
我在VC6.0下经过了编译,错误如下:
1.redefinition;
2;p can be seen;
--------------------Configuration: Way - Win32 Debug--------------------
Compiling...
way.cpp
F:\C++study\chapter12\Way\way.cpp(9) : error C2371: 'p' : redefinition; different basic types
F:\C++study\chapter12\Way\way.cpp(6) : see declaration of 'p'
Error executing cl.exe.
way.obj - 1 error(s), 0 warning(s)
luoxiao_std01
2004-01-30
打赏
举报
回复
实在没办法的话,这样也是合语法的!
void* p = new int;
delete (int*)p;
p = new char;
delete (char*)p;
嘟嘟猫的转折点
2004-01-30
打赏
举报
回复
同意pacman2000(pacman)
delete p 只是释放p指向的内存空间,指针变量仍然存在
所以 只是定义一个指针,不给他赋值还是可以delete它
nck7
2004-01-30
打赏
举报
回复
楼主是不是没有打;号,呵呵。
pacman2000
2004-01-30
打赏
举报
回复
重复定义啊。p在上面已经定义过了。指向的内容释放掉不表示这个指针变量不存在啊。
mouseleeky
2004-01-30
打赏
举报
回复
重新定义自然可以了。
为什么楼主说不可以啊?
78815
2004-01-30
打赏
举报
回复
int *p=new int
delete p
char *p=new char
在这里,delete 已经把p指针给释放了,重新定义怎么也不行?
danny
2004-01-30
打赏
举报
回复
指针指向的是一个地址...
举个例子,若数组a的首地址为1000,设它为int型 ,a[3]的地址是1000+3*2,然后从1006地址所标志的整型单元取出元素的值,即a[3]的值....
但如果是实型就是1000+3*4,他就得从1012取出.....
你想如果随便改,指指还能指准吗?
inline
2004-01-30
打赏
举报
回复
当把指针定义为某种类型后!指针就对它指向的内存用这种类型进行解释!
指向其它类型需要用不同的解释方式!要用 reinterpret_cast 重新解释!
mwaterfall
2004-01-30
打赏
举报
回复
指针包含了一个对象的其始地址和如何解释该地址的内容。我觉得应该可以改动,但是在解释该指针所指的内容是就会出现问题。
C++中常量、引用、
指针
、常量
指针
、
指针
常量、常量引用、顶层常量与底层常量
主要问题 哪个是
指针
不能
变? 哪个是
指针
指向
的对象
不能
变? 常量 常量const是constant的缩写,本意是不变的,不易改变的意思。const在C++中是用来修饰内置
类型
变量,自定义对象,成员函数,返回值,函数参数。 加了const修饰的变量,一经定义值永远
不能
改变。通常我们用在一些定值的声明定义上,比如某缓冲区的大小、某个最大值最小值等等。 const float MaxLenth = 100.0f; 如果你试图在声明定义以外的范围内修改该变量的值,是不被允许的,通常编译器就会检查出错误。 举
野
指针
、空
指针
函数功能:C库函数 void * calloc(size_t nitems,size_t size) 分配所需的内存空间,并返回一个
指向
它的
指针
。说明:NULL是空常量,它的值是0,这个NULL一般存放在内存中的0x00000000位置,这个地址只能存放NULL,
不能
被其他程序修改。定义:main函数有多种定义格式,main函数也是函数,函数相关的结论对main函数也有效(也可以定义main函数的函数
指针
)。返回值
类型
:void* :该函数返回一个
指针
,
指向
已分配大小的内存,如果请求失败,返回NULL。
指针
数组和数组
指针
、字符
指针
指针
数组和数组
指针
、字符
指针
区别和联系
数据结构 第4讲 单链表 二
单链表取值 单链表的取值不像顺序表那样可以随机访问任何一个元素,单链表只有头
指针
,各个结点的物理地址是不连续的,要想找到第i个结点,就必须从第一个结点开始按顺序往后数,一直数到第i个结点。 那么具体怎么做呢? 注意:链表的头
指针
不可以
随意
改动
!一个链表是由头
指针
来标识的,一旦头
指针
改动
或丢失,这个链表就不完整或找不到了。想想看,你拉着铁链子一头,另一端绑着水桶,到井里打水,你手一松,链子...
C语言第12节:
指针
(2)
数组传参本质:一维数组作为参数传递给函数时,数组名会退化为
指向
数组首元素的
指针
。函数接收到的是数组第一个元素的地址,而不是整个数组。等价写法:在函数参数中,int arr[]与int *arr是等价的,均表示一个
指向
int
类型
的
指针
。数组长度:由于函数只接收到数组首地址,因此无法得知数组的长度,通常需要传递一个额外的参数表示数组长度。sizeof的差异:在函数外sizeof数组会返回整个数组的大小,而在函数内则返回
指针
的大小。const修饰:当函数不需要修改数组内容时,使用const。
C++ 语言
65,182
社区成员
250,527
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章