当前位置:首页 » 编程语言 » c语言指针用delphi怎么写
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言指针用delphi怎么写

发布时间: 2022-06-01 15:18:42

‘壹’ Delphi中如何实现c语言的指针加1操作

var
PCS: ^Byte;
Inc(PCS) 就可以~

‘贰’ c 中的引用类型在delphi中如何使用

delphi中所有的类都是用引用传递的,引用类型名称就是类名称。
例如,Sender:
TObject;
这里的Sender就是引用。如果Sender指向一个对象,对Sender赋值nil不会改变原对象的任何特征,对象还在,仅仅是引用变了。这充分说明这里sender是引用不是值。
Delphi的引用不同于C的引用,相当于C中指针和引用的结合体,
例如Delphi中允许对引用赋空值,Sender
:=
nil;
而且声明时不需要赋值,这些C都不允许。
如果非要用指针,可以这样:Sender:
^TObject;
在类型前面加上^符号,但其实完全没有这个必要。除非对
非类
类型需要用到指针,比如Integer,record等。

‘叁’ delphi指针如何像c语言进行加减偏移啊

1、指针一般在直接操作内存、调用外部dll、调用API时用到。想要替代?-_-!!2、指针就是指向数据的一个地址,当然要给它分配内存来放它,计算机里面没有不给分配内存而使用的东东。3、是的,p就是一个指针。p := '窗口新标题';的意思是把p指向'窗口新标题'这个数据的地址,比如#12345678,计算机在引用它的时候就直接找这个地址来取值就行了。如果你定义的是var p string; p := '窗口新标题'的话,计算机在执行的时候会首先找p这个变量的地址,然后在找这个变量保存的值的地址,这样会有多次扫描内存的过程,造成一些不必要的浪费。

‘肆’ C语言 struct tagRECT * 是什么意思, 翻译成DELPHI如果写.

这是非常基本的C语言知识,表示声明一个指向tagRECT结构体的指针。你要不知道的话也难以用C语言来编程了。

传说有Delphi这么一个东西,我还没见过。

‘伍’ 关于delphi指针,记得在C语言中可以用*取指针的值(就是指针存放的地址的值),,那么在delphi中怎么实现

C: 取地址 &v 地址中的值 *p
DELPHI: 取地址 @v 地址中的值 p^

‘陆’ 谁知道如何在Delphi中实现C语言中静态变量的功能

而在C语言中在定义局部变量时可以用static来定义静态变量,该变量在整个程序的运行中的值一直可以保留,可以为程序实现特殊的功能。但Delphi却没有这一功能,如果为实现这一功能用全局变量显然会破坏程序的封装性,是不可取的。其实这一功能在Delphi中也是可以通过const定义常量的方法来变通实现这一功能。常量本来是不允许在程序中进行修改的,如果想要修改它们的值,有以下两种方法可以实现:一、通过{$J}的开关来控制编译器是否允许程序修改常量根据Delphi的帮助文档描述:$J指令控制是否允许定义为常量的值是否允许被修改。在{$J+}状态,定义的常量可以被修改,常量在此时相当于一个可以被初始化数值的变量。在{$J-}状态定义的常量是真正的常量,任何尝试对常量的修改都会使编译器报错。具体示例如下:{$J+}procere TForm1.Button1Click(Sender: TObject);
const i:integer=100;
begin i:=i+100;
showmessage(inttostr(i));end;{$J-}需要说明的是,早期的Delphi或PASCAL版本,常量都是可写的,相当于{$J+}状态,以前的源代码在使用可写常量需要重新编译时必须使用{$J+}进行编译。二、通过指针来实现此功能通常用Delphi来写程序很少会用到指针,其实Delphi的指针功能和C语言的指针功能一样的强大,此处不做过多讲述。如果想要修改常量的值的话,可以定义一个指针变量,使用指针指向此常量的地址,然后通过指针来修改常量。具体示例如下: procere TForm1.Button1Click(Sender: TObject);
const i:integer=100;
var p:PInteger;
begin p:=@i;
P^:=p^+100;
end;如果不是出于使用静态变量的目的,建议最好不要使用以上两种方法,更不要通过这种方法来改变全局常的值,那样会对程序带来灾难性的后果。必须使用的话,建议使用第一种方法,使用完后应尽快使用{$-}来关掉改写常量功能。

‘柒’ C语言指针用delphi如何写呢

根据偏移量来取得对应的值,先取得data字段的偏移,再加上第j个元素的偏移,转换成地址之后再获取值。
data[j]就是m的data字段,第j个元素的值。
Pointer(Cardinal(@(m.data)+j * Sizeof(data)))^

‘捌’ 请教各位大侠,这句C语言描述的函数声明如何在DELPHI中定义

function JK_XYReadGuestCard(p_csRoomNo: PChar; p_csStartTime: PChar;var p_nTimeUnit: Integer; var p_nTimeLength: Integer; var p_nStopFlag: Integer; p_csCardNo: PChar): Integer;
这里的LPSTR就是相当于字符指针,用delphi的PChar对应,
int &这个数据类型可以由var ***:Integer来对应
没测试过,字符型的如果不行可以用其他数据类型代替。

‘玖’ c++数组指针用delphi怎么写

type
pint= ^integer;
pintarray = array[0..MaxListSize - 1] of pint;

‘拾’ Delphi指针的指针怎么表示

只要这样就可以了type
Pint
=
^integer;
PPint
=
^Pint;PPint就是integer指针的指针其他的一样.delphi中使用指针必须先定义类型,否则类型不相容比如i:
^integer;k:
^integer;i与k的类型是不相容的必须这样i:
Pint;k:
Pint;