所有栏目 | 云社区 美国云服务器[国内云主机商]
你的位置:首页 > 云社区 » 正文

C语言中,定义一个指针的时候为这个指针开辟存储空间吗?

发布时间:2020-04-15 16:48:58

资讯分类:指针  c语言  开辟  存储  指针  内存  指向
C语言中,定义一个指针的时候为这个指针开辟存储空间吗?

内存都是用地址编好了每一”格“的,一个地址对应一“格”,定义一个指针时,系统为指针随机赋一个内存大小范围内的地址,所以该指针肯定指向内存的某一“格”。如果没对指针进行赋值便使用(如p->next之类的),一般情况下在windows中运行时会提示非法访问内存,然后程序崩溃(调试时经常出现的情况),如果其他操作系统没有这样保护的话,可以使得指针任意访问内存,这是非常危险的,所以尽量别出现野指针。

1、因为定义的指针已指向一个地址,所以可以*p=5;

2、定义指针时并不是开辟内存空间,指定指针类型主要是为了在 *p 访问指针指向内容时可以确定怎样读取这块连续的内存(例如int与long所占的字节是不同的)

C语言中,定义一个指针的时候为这个指针开辟存储空间吗?

指针本身也是一种变量,有它自己的内存地址跟空间。const指针有两种形式type * const nametype const *name第一种为常量指针,不能修改指针指向的地址第二种为指向常量的指针,不能修改指针指向的内存地址里保存的数据

留言与评论(共有 0 条评论)
   
验证码:
Top