会Delphi的朋友请指点一下
Delphi->C++Build
fp : ^pointer; //声明一个指针变量
fp^ //取指针所指对象的值
我转化到cb下
pointer *fp;
*fp
这样对不对呢,可是我现在不能用;
给fp:=nil;是什么意思,与cb下的fp=NULL;
一样吗,可是我用得不对呀;
问题点数:20、回复次数:6Top
1 楼jishiping(JSP 季世平)回复于 2002-05-26 09:33:21 得分 0
对Delphi不是很了解,但懂一点,我觉得就是你说的呀。你说用得不对,怎么
个不对法?Top
2 楼ken_henderson( )回复于 2002-05-26 09:34:49 得分 0
语法应该没问题,可能是其他问题,最好把代码贴出来Top
3 楼yanyuwuhen(颜羽)回复于 2002-05-26 10:27:19 得分 0
具体一些Top
4 楼blankman(菜鸟)回复于 2002-05-26 14:02:41 得分 0
pointer 是什么类型的,是指针类型的还是什么?Top
5 楼rockhard(不签名)回复于 2002-05-26 14:17:27 得分 10
Delphi->C++Build
fp : ^pointer; //声明一个指针变量 相当于(void *) fp;//无类型指针
fp^ //取指针所指对象的值 //在C++中此处要进行强制类型转化如:
*(int *) fp;转化为整型再取值。
我转化到cb下
pointer *fp;
*fp
这样对不对呢,可是我现在不能用;
给fp:=nil;是什么意思,与cb下的fp=NULL;//一样NULL即为0
一样吗,可是我用得不对呀;
Delphi里面有NULL和NIL两者是不一样的。对指针赋空值用NIL,与C++ 中0(NULL)等价。
pointer 在C++中相当于一个无类型的指针。
Top
6 楼rockhard(不签名)回复于 2002-05-26 14:34:00 得分 10
给个空类型转化例程,应该不会再有问题了。
#include <iostream.h>
void main()
{
void * p;
int * ip,i=100;
ip=&i;
p=(void *) ip;
cout<<"i="<<*(int *)p<<endl;//先转化为整指针再取指针值。
}
Top




