ss[]//var ss:String;

Pointer(ss)^
是不是一个意思呢? 答:不是。
ss[]表示第一个字符。如:ss:='abc'
则表示'a'。ss[]=Length(ss);
Pointer(ss)^ 和 @s 也不一样。
就连 cc:PChar
Pointer(cc)^ 和 @cc 也不一样。 应用:
一、发送字符串 或者 Record procedure SendStr(ss:String);
var cds:TCopyDataStruct;hh:HWND;
begin
hh:=FindWindow('TfrmFYErpMsg',nil);
if hh<> then
begin
//cds.dwData:=Handle;可要可不要
cds.cbData:=Length(ss)+;//不能漏掉+
cds.lpData:=AllocMem(cds.cbData);//GetMem(cds.lpData,cds.cbData);可替代
StrCopy(cds.lpData,PChar(ss));
SendMessage(hh,WM_COPYDATA,hh,Cardinal(@cds));
FreeMem(cds.lpData);
end;
end; TRR=Record
a:String[];
b:PChar;//这里注意,不能使用PChar这种长度可变的。
d:Double;
end;
procedure SendRec(aa:TRR);
var cds:TCopyDataStruct;hh:HWND;
begin
hh:=FindWindow('TfrmFYErpMsg',nil);
if hh<> then
begin
cds.cbData:=sizeof(aa);
// cds.lpData:=AllocMem(cds.cbData);//GetMem(cds.lpData,cds.cbData);
cds.lpData:=@aa;
SendMessage(hh,WM_COPYDATA,hh,Cardinal(@cds));
// FreeMem(cds.lpData);不知道怎么要这个???
end;
end; 二、接收 procedure RecordWM(var ARec:TWMCopyData);message WM_COPYDATA; procedure TfrmFYErpMsg.RecordWM(var ARec: TWMCopyData);
var s:String;x:TRR;
begin
//字符串
s:=StrPas(ARec.CopyDataStruct^.lpData);
//Record
x:=TRR(ARec.CopyDataStruct.lpData^);
s:=x.a+#+x.b+#+FloatToStr(x.d);
end;

String的疑问的更多相关文章

  1. C++解析(19):函数对象、关于赋值和string的疑问

    0.目录 1.函数对象 2.重载赋值操作符 3.string类 4.小结 1.函数对象 编写一个函数: 函数可以获取斐波那契数列每项的值 每调用一次返回一个值 函数可根据需要重复使用 实现功能: #i ...

  2. 第36课 经典问题(下)----关于string的疑问

    实例1: 下面的代码输出什么,为什么? #include <iostream> #include <string> using namespace std; int main( ...

  3. C++中的赋值操作符重载和拷贝构造函数

    1,关于赋值的疑问: 1,什么时候需要重载赋值操作符? 2,编译器是否提供默认的赋值操作符? 2,关于赋值的疑问: 1,编译器为每个类默认重载了赋值操作符: 1,意味着同类型的类对象可以相互赋值: 2 ...

  4. [我的疑问]String? = "Skiy Chan" 中的问号是什么意思?

    var optionalName : String? = "Skiy Chan" String? = "Skiy Chan" 中的问号是什么意思?目前还在看ap ...

  5. 关于Java String对象创建的几点疑问

    我们通过JDK源码会知道String实质是字符数组,而且是不可被继承(final)和具有不可变性(immutable).可以如果想要了解String的创建我们需要先了解下JVM的内存结构. 1.JVM ...

  6. 修饰符(动态String数组篇)--- 常用 解除疑问。

    1.无修饰符----是直接传基本类型的地址过来,并没有把基本类型的指针复制一份入栈,所以一旦修改就是修改原来的值. 2.const 修饰符 与 无修饰符一致. 3.var修饰符 与 上一致. 4.ou ...

  7. Java中String的split()方法的一些疑问和试验

    http://tjuking.iteye.com/blog/1507855 和我想的还是不大一样,因为不知道源码也不知道具体是怎么实现的,我的理解如下: 当字符串只包含分隔符时,返回数组没有元素:当字 ...

  8. djang项目中的疑问及解决办法(ValueError: Invalid model reference 'apps.user.User'. String model references must be of the form 'app_label.ModelName'.)

    这个问题其实就是apps.user.User这种用法是不对的,就在下面的模型中,我本来是绑定apps.user.User,但是试了一下,由于order和user是在同一个apps中,所以直接用user ...

  9. 透过WinDBG的视角看String

    摘要 : 最近在博客园里面看到有人在讨论 C# String的一些特性. 大部分情况下是从CODING的角度来讨论String. 本人觉得非常好奇, 在运行时态, String是如何与这些特性联系上的 ...

随机推荐

  1. 【Python】进程-控制块

    一.进程控制块 PCB (Process Control Block): 存放进程的管理和控制信息的数据结构称为进程控制块.它是进程管理和控制的最重要的数据结构,每一个进程均有一个PCB,在创建进程时 ...

  2. SQL server类型转换

    1. CAST函数 语法: CAST ( expression AS data_type [ ( length ) ] ) | | | |关键字 表达式或值 要转换成的数据类型 最大长度 示例: SE ...

  3. org.springframework.dao.InvalidDataAccessApiUsageException报错

    2018-01-09 18:12:29,980 [qtp1501019626-21] ERROR - 外部接口调用方法[TestController$$EnhancerBySpringCGLIB$$8 ...

  4. 【转】IPV6的地址类型

    http://blog.sina.com.cn/s/blog_8d795a0f01018hiz.html <IPV6的地址类型>IPV6的地址类型 可分为三大类: 1.单播地址 2.组播地 ...

  5. PHPweb应用攻击总结(转)

    XSS跨站脚本 概念:恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的. 危害: 盗取用户COOKIE信息. 跳转 ...

  6. doc转html

    Doc2Html  li标签没闭合 在线Word转HTML  style样式

  7. 利用selenium模拟登录webqq

    from selenium import webdriver import selenium.webdriver.support.ui as ui import time opt = webdrive ...

  8. [LeetCode&Python] Problem 107. Binary Tree Level Order Traversal II

    Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from left ...

  9. Unity导航系统Navigation使用教程

    Unity开发VR之Vuforia 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- ...

  10. 矩阵快速幂(以HDU1757为例)

    对于数据量大的求余运算,在有递推式的情况下,可以构造矩阵求解. A - A Simple Math Problem Lele now is thinking about a simple functi ...