c语言面向对象编程,强制把ip1中p的地址赋值给a
#include"Mobile.h"
#include
class oss{
private:
char *p;
public:
//oss();
void mass();
};
void oss::mass(){
p=new (char);
printf("%p\n",p);
*p='a';
printf("%c\n",p);
};
int main()
{
oss ip;
oss ip1;
ip1.mass();
ip.mass();
char a;
a=(char)0x02250730;//强制给a,ip1的地址
printf("%c",*a);
printf("%p\n",a);
}
到了该打印a的值的时候就直接跳出运行了,但是可以输出a的地址
我感觉是面向对象的封装性导致的
为什么会跳出运行了?到底是不是封装性导致的?
char a;
a=(char)0x02250730;//强制给a,ip1的地址
printf("%c",*a);
这3句话有问题:
这样改看是否可行