1、
sDIAG_CRITERIA=(DIAG_CRITERIA*)p;
DIAG_CRITERIA是一结构,p是一byte指针。不知道在DELPHI中又如何表示?不需要每个成员的赋值的代码。2、
struct T_DATETIME
{
unsigned int sec : 6;
unsigned int min : 6;
unsigned int hour : 5;
unsigned int day : 5;
unsigned int month : 4;
unsigned int year : 6;
};
此结构只占四个字节,其中的每个成员都是按位计算。sT_DATETIME=(T_DATETIME*)p;这样赋值后每个成员都自动计算了。不知道DELPHI又如何写?不需要一条条的折分字节进行计算的代码。3、
f = FileOpen(strFileName, fmOpenRead);
i=FileRead(f, (void*)buf, 2000000);
这两条读文件语句如何在DELPHI中实现?
因为读取的字节长度太大,在DELPHI中的i总为-1。
sDIAG_CRITERIA=(DIAG_CRITERIA*)p;
DIAG_CRITERIA是一结构,p是一byte指针。不知道在DELPHI中又如何表示?不需要每个成员的赋值的代码。2、
struct T_DATETIME
{
unsigned int sec : 6;
unsigned int min : 6;
unsigned int hour : 5;
unsigned int day : 5;
unsigned int month : 4;
unsigned int year : 6;
};
此结构只占四个字节,其中的每个成员都是按位计算。sT_DATETIME=(T_DATETIME*)p;这样赋值后每个成员都自动计算了。不知道DELPHI又如何写?不需要一条条的折分字节进行计算的代码。3、
f = FileOpen(strFileName, fmOpenRead);
i=FileRead(f, (void*)buf, 2000000);
这两条读文件语句如何在DELPHI中实现?
因为读取的字节长度太大,在DELPHI中的i总为-1。
解决方案 »
- 如何知道一个sql数据库是本地的数据库
- 很简单的问题:'的使用?
- 请问打包的问题,我用的是wise iInstallMaster 8.1为什么我在编译的时候会出现错误: “目标路径必须用一个变量开头”
- 显示字体的问题
- 求类似彩票模拟选好选择的是用Delphi实现
- 程序员的人生
- 一个数据库的问题!!!!
- 程序连接sql server有时候会报错,提示信息如下,请问是为什么?
- 新的项目下来了,不知道如何的应付。
- 模拟浏览器
- intraweb 发布问题,错误提示:My Intraweb Application Error:Session not found. Session may have expired.
- 请问如何水平翻转Bitmap?
type
pDIAG_CRITERIA = ^DIAG_CRITERIA;var
pD : pDIAG_CRITERIA;
D : DIAG_CRITERIA;pD := @D;2.
T_DATETIME = packed record
sec : byte;
min : byte;
hour : byte;
day : byte;
month : byte;
year : smallint;
end;
用7个字节实现3.
procedure TForm1.Button1Click(Sender: TObject);
var
f:TextFile;
str,strLine : string;
begin
try
Assignfile(f,'c:\test.txt');
reset(f);
str := '';
while not eof(f) do
begin
readln(f,strLine);
str := str + strLine;
end;
finally
CloseFile(f);
end;
end;
第1个,已经指定一个^byte的指针P,而是要把这个P的自动赋给另外一个结构。
第2个,格式已经这么要求了,不能改变了。
第3个,如果采用这种方法,还不如用流方便。不过后面编程就麻烦了。这些方法在C语言很容易也很方便,DELPHI中查了很多资料都未说这些。
最好改写C语言,改成通用的类型接口,否则可能不能实现。楼主是C高手吧?如果完全明白指针的调用关系,这个问题是否能解决,楼主就能自己判断了吧?