C++3个问题

来源:百度知道 编辑:UC知道 时间:2024/05/06 00:54:28
c++能不能用指针控制特定的内存地址数值
指针判定语句能不能这样写:
int *fip
if(fip==abc)
c++能不能用指针控制特定的内存地址数制
应该是char *fip
if(fip=="abc")
是指针外程序进程的内存地址数值
对不起,错了T_T

c++的指针与C语言一样,可以指向特定的内存地址。
int *fip;假如不是数组的话,可以这样写if(*fip == 10)。
if(fip == abc)是拿fip地址与abc比较,可以这样写。
char *fip;一般用if(strcmp(fip,"abc")==0)来进行比较

1、看你这个内存是不是属于你的程序的,如果是,可以用指针去读写制定内存里面的值。否则,后果难以预料,任何错误都可能产生。

2、不能这样比较。不知道你的abc是变量还是常量,如果是指针变量,到可以这么做。我理解你的意思abc应该是个字符串,字符串比较应该用strcmp的

3、内存地址的数制,都是二进制,无所谓控制不控制的。

不能
能(不过你的指针好像没有初值哦)
能可以以各个方式读出

你看看,你的问题太模糊了,导致两位楼上答案几乎完全不同嘛~
先写个像样点的程序作为例子吧

可以,
当然这里是指本进程的内存空间
要访问外进程的内存空间要用其它的API函数

当然如果是访问WINDOWS的保护空间的话,系统会自动出错
好象是0x400000之前

如果访问之后的内存空间的话,结果未定义