社区
C语言
帖子详情
一个关于静态指针和动态指针的问题
bsautoland
2003-04-12 11:01:39
现在总是弄不清出什么是动态的指针,什么是静态的指针。
请大家说清楚点好么?
谢谢了
...全文
734
10
打赏
收藏
一个关于静态指针和动态指针的问题
现在总是弄不清出什么是动态的指针,什么是静态的指针。 请大家说清楚点好么? 谢谢了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fishyqd
2003-04-14
打赏
举报
回复
同意 guoguoleige(难得糊涂)
jinsixiong
2003-04-14
打赏
举报
回复
char *p="1bisdfo"实际上是const char *p = "1bisdfo",是不能动的
liushmh
2003-04-14
打赏
举报
回复
int* const p;//静态
int* p;//动态
专注是一种美德
2003-04-14
打赏
举报
回复
静态指针是在程序运行前就确定下来是指向固定内容的指针。在程序中不允许改变指针的指向~~~比如说int a=3;int *p=&a,*q;试图将p=q或p++等都是错误的
动态指针是在程序运行中可以不断改变的指针~~如在栈中的栈顶指针随着元素的增加或减少而不断变化~~~
maurice1983
2003-04-13
打赏
举报
回复
我给你一个最好的一个解释,绝对是最好的!
所谓动态的指针是可以动的指针,而静态是不能动的指针!
vosbtis
2003-04-13
打赏
举报
回复
其实动态的指针和静态的指针指得是
该指针所指的是堆内存还是固定的内存块(alloc 及 free由系统管理)
如:
1. char* p1 = new char[10];
2. char* p2 = "abcde";
3. if(p1){
4. strcpy(p1,p2);
5. }
6. p2 = p1;
7. delete p2;
8. p2 = NULL;
9. p1 = NULL;
p1 所指的是堆内存(heap), 可以动态生成;
p2 在 语句 6前所指的是该程序的数据段里的一块,不可控制,由系统管理.
在执行了语句 6之后, p2 也指向了堆内存(heap).
执行了语句 7 后, p1, p2 所指的堆内存(heap)已被释放掉,不能再对它进行操作.
p1,p2 变量的内存本身是栈内存 (stack),在进入该函数时生成,退出函数时释放.
li3807
2003-04-13
打赏
举报
回复
在类中:
class A
{
public:
A(){}
protected:
static int *p;
};
这个就是静态指针,它在类中是公用的指针.
bsautoland
2003-04-13
打赏
举报
回复
我想知道,那些事可以动得指针,那些事不可以懂得指针。
如,char *p="1bisdfo";
p就是一个静态的指针。我想知道这样的
谢谢大家乐
小笨和漂向北方
2003-04-12
打赏
举报
回复
你是指指向堆中的指针 和 指向栈中以及常量的指针吗?
bsautoland
2003-04-12
打赏
举报
回复
c中的
深入理解C语言
指针
和结构体
本课程的主要目的是通过介绍C语言的
指针
、
指针
变量、
静态
内存分配、
动态
内存分配以及结构体等知识,实现C语言到Java以及Python编程的
一个
完美过渡.
静态
指针
成员的妙用
一、
静态
成员的特点 用static定义的成员变量是
静态
成员;
静态
成员是与类绑定的,而不是与对象绑定的,所以
静态
成员不需要实例化就可以通过类名访问; 因为
静态
成员是与类绑定的,所以
静态
成员只开辟
一个
内存空间(普通成员,有多少个对象,就开辟多少个内存空间); 因为
静态
成员只开辟
一个
内存空间,所以该类的所有对象共享
静态
成员的内存空间; 二、
静态
成员的使用 2.1、声明
静态
成员 class Test { public: Test(); ~Test(); //声明
一个
本类的
静态
指针
s
C++ 类对象与类
指针
(
静态
和
动态
多态)
代码: class Animal { public: virtual void eat() { cout << "我是动物 我在吃东西" << endl; } }; void main() { //建立类对象 animal Animal animal; animal.eat(); //建立类
指针
animal Animal* animal = new Animal;//建立类型为Animal的类对象(new Animal) animal, 指向Animal类的
指针
(
Thinking in C++:
静态
指针
与指向
静态
类型的
指针
当将const与
指针
一起使用的时候,一般有两种情况,const被应用到
指针
指向的那个东西,或者const被应用到存储在
指针
中的内存地址。 第一种情况:pointer to const 注意:const修饰符绑定到离他最近的那个东西上。 const int* u; //u是
一个
指针
,指向
一个
const int。即 为 (const int) (*u); 也就是说u不是
静态
的,所以它不需要初始
静态
成员函数、this
指针
、对象
指针
和
动态
对象使用小结
先声明
一个
Time类 ·
静态
成员函数 ·
静态
成员函数就是使用 static 关键字声明的成员函数 在类外实现时不加static关键字,只有在类内声明时才加static ·
静态
成员函数是类的一部分,作用是为了处理
静态
数据成员 没有this
指针
·
静态
成员函数可以直接访问该类的
静态
成员,但不能直接访问类中的非
静态
成员 ·若想在
静态
成员fun中使用非
静态
成员,则必须
C语言
69,378
社区成员
243,075
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章