Delphi结构,字符串和指针
2022-12-28 12:45:05 作者:admin
本文整理自网络,侵删。
C 语言版
#include <stdio.h>#include <stdlib.h>
//结构体声明typedef struct { int num; char *str;} strct;
int main(void) { //生成指针类型变量 strct *entity;
//确保动态内存 entity = (strct*)malloc(sizeof(strct));
//初始化成员 entity->num = 0; entity->str = (char*)malloc(sizeof(char) * 32);
//将一个字符串分配给内存 sprintf(entity->str, "%s %s!", "Hello", "World"); printf("%s\n", entity->str);
// 释放 free(entity->str); free(entity);
return 0;}
ANSI_Delphi版program Project1;
{$APPTYPE CONSOLE}
uses System.SysUtils;
type//结构体声明 Tstrct = record num: Integer; str: PChar; end; // ??造体へのポインタの定?x Pstrct = ^Tstrct;
var
entity: Pstrct;begin // メモリの?_保 GetMem(entity, SizeOf(Tstrct));
//初始化成员 entity^.num := 0; GetMem(entity^.str, SizeOf(char) * 32);
//将一个字符串分配给内存 StrPCopy(entity^.str, Format('%s %s!', ['Hello', 'World'])); Writeln(entity^.str);
// 释放 FreeMem(entity^.str); FreeMem(entity);end.
Unicode_Delphi版program Project1;
{$APPTYPE CONSOLE}
uses System.SysUtils, System.AnsiStrings;
type//结构体声明 Tstrct = record num: Integer; str: PAnsiChar; end; // ??造体へのポインタの定?x Pstrct = ^Tstrct;
var // ??造体へのポインタの?涫? entity: Pstrct; // [1]begin // メモリの?_保 GetMem(entity, SizeOf(Tstrct)); // [2]
//初始化成员 entity^.num := 0; // [3] GetMem(entity^.str, SizeOf(AnsiChar) * 32); // [4]
//将一个字符串分配给内存 System.AnsiStrings.StrPCopy(entity^.str, AnsiString(Format('%s %s!', ['Hello', 'World']))); // [5] Writeln(entity^.str);
// 释放 FreeMem(entity^.str); // [6] FreeMem(entity); // [7]end.
相关阅读 >>
Delphi杀进程的两种方式
Delphi createdir 建立文件夹路径
Delphi 调用外部程序并等待其运行结束
解决 Delphi 程序在不同操作系统中 shellexecute 调用 chrome.exe 偶尔无效的问题
Delphi多线程图片转换类实现
Delphi idftp ditdirectory未定义
Delphi 临时文件路径(支持安卓、ios)
Delphi xe10对json的解析应用
Delphi unigui 调用js
Delphi 修改ie首页代码
更多相关阅读请进入《Delphi》频道 >>
猜你喜欢
联络方式:
400-123-789
邮箱:xiachao@163.com
Q Q:12345678
微信公众号
微信二维码