在delphi中怎么实现象C++的our_str的功能,如以下代码在delphi中怎么实现:
/* C语言函数定义:
int __stdcall TestFunc1(int in_int, int *out_int, float in_float, float *out_float, char* in_str, char* out_str)
{
*out_int = in_int + 1;
*out_float = in_float + 1;
strcpy(out_str, in_str);
strcat(out_str, " - Added");
return 123;
} */
/* C语言函数定义:
int __stdcall TestFunc1(int in_int, int *out_int, float in_float, float *out_float, char* in_str, char* out_str)
{
*out_int = in_int + 1;
*out_float = in_float + 1;
strcpy(out_str, in_str);
strcat(out_str, " - Added");
return 123;
} */
解决方案 »
- 图像改变尺寸后怎么把数据矩阵赋给图像
- 散分送工具 代码变更助手2008
- 如何虚拟出一个"移动磁盘"
- 請教大俠﹐數據集ClentDataset在本地怎么存取?語法怎么寫
- pwl密码文件怎样查看????
- 如何将数据集中的纪录全部删除?
- ---------------help me about Session.GetDatabaseName
- 请问各位大大adoquery的用法?
- ClientDataSet.ApplyUpdates 报出错误:列名“XX”无效
- 如何在单机下测试自己做的client和sever?
- 用 FileRead和 FileWrite读写文件时, 如果字节数过大时的问题.
- cxGrid显示数据时的全局扫描如何禁止?
int* pinteger
float* pDouble
function GetMacP(Out_str: Pchar):integer ; stdcall;
var
MacString:string;
flag:TReplaceFlags;
begin
flag:=[rfReplaceAll];
MacString:= '00:17:1D:61';
Out_str:=Pchar(StringReplace(MacString,':','', Flag));
Result:=1;
end;
调用者:
Function GetMacP(x:Pchar) : integer ; stdcall ; external 'test.dll' ;
procedure TForm1.Button3Click(Sender: TObject);
var
rez:pchar;
rec:integer;
begin
rec:=GetMacP(rez);
ShowMessage (rez);
end;调用后为什么没把Out_str传递给调用者呢?只传了一个字符。是哪里出错了?