社区
语言基础/算法/系统设计
帖子详情
Pointer ,pchar ,^char 之间的异同点,我现在越看书越迷糊
gwhdaxia
2005-03-23 04:32:04
希望大家不吝赐教
...全文
285
7
打赏
收藏
Pointer ,pchar ,^char 之间的异同点,我现在越看书越迷糊
希望大家不吝赐教
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
YiOnLine
2005-03-24
打赏
举报
回复
学习
happywww
2005-03-24
打赏
举报
回复
pointer = pchar = ^char
实际上都是一样的东西。不过逐个字节遍历内存PChar比较简单一些,可以直接用Inc(P)得到下一个地址,pointer只能用 P := Pointer(Integer(P) + 1), 麻烦
zhxfzhxf1
2005-03-23
打赏
举报
回复
Pointer ,pchar ,^char
相同点:都是指针(或者与指针相关)
不同点:
Pointer: 是无类型指针,可以指向任何内存地址;
pchar ,^char :指向字符
pchar: 通常是指向字符串,并且该字符串以\0结尾;
^char :指向字符变量,或者字符数组中的某一元素的地址,该字符数组不必须以\0结尾
pchar是C/C++中广泛使用的字符串类型;
在delphi中通常使用string;但调用API时,通常使用pchar.
关系:三者可以互相转换,因为本质上三者都是一个与integer长度相当的一块内存,其中存储着指向目标的地址,
如mosquitor() 所言"用户可以根据自己的需要将任何类型的指针数据强制转换成Pointer类型"
如
var a: Pointer;
b: integer;
pb: PInteger;
...
pb := ^b; // pb =@b; ??
a := pb;
后可以用PInteger(b)^来得到a的值;
chinaandys
2005-03-23
打赏
举报
回复
Pointer-----------------无类型指针
pchar--------------------指向char类型的一个指针. 是^char类型的一个别名
^char--------------------一个指向char类型的一个指针.
aloking
2005-03-23
打赏
举报
回复
<<參透>>一書, 關于這個問題 我翻了书 没找到
mosquitor
2005-03-23
打赏
举报
回复
pointer讲白了就是一个32位的数字,该数字表示内存中的一个地址,用户可以根据自己的需要将任何类型的指针数据强制转换成Pointer类型
PChar=^Char,所以Pchar是char类型的指针
所以^Char可以用Pchar来代替
aiirii
2005-03-23
打赏
举报
回复
<<參透>>一書, 關于這個問題, 寫得還不錯
java用JNA调用dll实例,包含各种参数调用
实例中演示了各种参数形式的DLL函数调用,如:基本数据类型、基本数据类型的指针和引用、结构体、结构体的指针和引用、函数指针和回调函数、字符串指针、输入数组、输出数组等,非常实用。
delphi中p
c
har
、
c
har
、string的定义与区别
C
har
是单个字符; P
C
har
就是指向一个以Null 结尾的每个字符为一个字节的字符串的指针。 (可以看成是一个字符串) ...type P
C
har
=^
C
har
; P
C
har
类型是一个指向
C
har
的指针,并使用Delphi的扩展语法.它也
Delphi中p
C
har
c
har
String的关系及转化
C
har
是单个字符; P
C
har
就是指向一个以Null 结尾的每个字符为一个字节的字符串的指针。 (可以看成是一个字符串) ...type P
C
har
=^
C
har
; P
C
har
类型是一个指向
C
har
的指针,并使用Delphi的扩展语法.它也
string,p
c
har
,array of
c
har
之间
的转化(转贴)
string,p
c
har
,array of
c
har
之间
的转化2009-07-09 10:15设有以下三个变量:vars:string;p:p
c
har
;a:array[1..20] of
c
har
;那么三者
之间
的转换如下:1、字符串到P
C
har
p:=P
C
har
(s);2、P
C
har
到字符串 s:=p;3、P
C
har
到...
delphi中string,p
c
har
,array of
c
har
,
point
er
,Pbyte,array of byte
之间
的转化
写程序时,老是被几个数据类型搞的晕头转向,
现在
总结一下。 基本上都是从网上查的,但又不是在一个地方,所以标记成‘转载’但又不好写从哪里转载的。有抄袭请见谅。 var s:string; p:p
c
har
; a:array[1..20] ...
语言基础/算法/系统设计
16,748
社区成员
33,247
社区内容
发帖
与我相关
我的任务
语言基础/算法/系统设计
Delphi 语言基础/算法/系统设计
复制链接
扫一扫
分享
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章