N nibul Unregistered / Unconfirmed GUEST, unregistred user! 2008-05-27 #1 C++中可以对一个PDWORD类型的变量进行 “变量++” 的操作,这么这个操作对于PDWORD类型的变量来说是对指针的指向的地址进行的操作吗?那么这个转换为pascal的语法应该怎么写,不知道我说的是否明白,这个操作肯定不是+1的操作。
C++中可以对一个PDWORD类型的变量进行 “变量++” 的操作,这么这个操作对于PDWORD类型的变量来说是对指针的指向的地址进行的操作吗?那么这个转换为pascal的语法应该怎么写,不知道我说的是否明白,这个操作肯定不是+1的操作。
H hanpengshan_00 Unregistered / Unconfirmed GUEST, unregistred user! 2008-05-27 #2 变量++,是把地址往后移动SizeOf(变量类型)个字节(如果变量是指针,如果是简单类型,那么就是把变量+1),在pascal里就是Inc(指针变量-或者说指针吧) 参考 Note: If X is a pointer type, it increments X by N times the size of the type pointed to. Thus, given type PMytype = ^TMyType; and var P: PMyType; the statement Inc(P); increments P by SizeOf(TMyType).
变量++,是把地址往后移动SizeOf(变量类型)个字节(如果变量是指针,如果是简单类型,那么就是把变量+1),在pascal里就是Inc(指针变量-或者说指针吧) 参考 Note: If X is a pointer type, it increments X by N times the size of the type pointed to. Thus, given type PMytype = ^TMyType; and var P: PMyType; the statement Inc(P); increments P by SizeOf(TMyType).
W wr960204 Unregistered / Unconfirmed GUEST, unregistred user! 2008-05-27 #3 var: pd : pdword; ..... Inc(pd); Inc(pd,1); Inc(pd,10000);
V vvyang Unregistered / Unconfirmed GUEST, unregistred user! 2008-07-10 #4 用 Inc 函数,不过注意第二个参数是步长,跟指针类型有关,而不是要移动的字节数: 例如: p: PChar Inc(p, 2) 移动 2 个字节 p: PDWORD Inc(p, 2) 移动 8 个字节(两个 DWORD)
用 Inc 函数,不过注意第二个参数是步长,跟指针类型有关,而不是要移动的字节数: 例如: p: PChar Inc(p, 2) 移动 2 个字节 p: PDWORD Inc(p, 2) 移动 8 个字节(两个 DWORD)