C++中这几句代码在Delphi中怎么写?

Hegemon 2008-07-24 03:25:00
const char szDtmf[] = "0123456789*#";

switch (m_iDtmf)
{
case 0: // send dtmf using H.245 UserInputIndication
{
Acs_VoIP_H245UII h245Uii = {0};
h245Uii.m_s8Signal = szDtmf[iDtmf];
}
break;
...全文
132 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
僵哥 2008-07-24
  • 打赏
  • 举报
回复
const idBtnDtmf:array [0..11] of Integer = ( 
IDC_BUTTON_DTMF0, IDC_BUTTON_DTMF1, IDC_BUTTON_DTMF2, IDC_BUTTON_DTMF3,
IDC_BUTTON_DTMF4, IDC_BUTTON_DTMF5, IDC_BUTTON_DTMF6, IDC_BUTTON_DTMF7,
IDC_BUTTON_DTMF8, IDC_BUTTON_DTMF9, IDC_BUTTON_DTMFA, IDC_BUTTON_DTMFP
);
var
iDtmf: Integer;
...

iDtmf := 0
whil iDtmf < (sizeof(idBtnDtmf) div sizeof(int)) do
begin
if (idBtn = idBtnDtmf[iDtmf]) then
break;
Inc(iDtmf);
end;
if (iDtmf = sizeof(idBtnDtmf) div sizeof(int)) then
Exit;
僵哥 2008-07-24
  • 打赏
  • 举报
回复
int idBtnDtmf[] = { 
IDC_BUTTON_DTMF0, IDC_BUTTON_DTMF1, IDC_BUTTON_DTMF2, IDC_BUTTON_DTMF3,
IDC_BUTTON_DTMF4, IDC_BUTTON_DTMF5, IDC_BUTTON_DTMF6, IDC_BUTTON_DTMF7,
IDC_BUTTON_DTMF8, IDC_BUTTON_DTMF9, IDC_BUTTON_DTMFA, IDC_BUTTON_DTMFP
};

for (int iDtmf = 0; iDtmf < sizeof(idBtnDtmf)/sizeof(int); ++iDtmf)
{
if (idBtn == idBtnDtmf[iDtmf])
break;
}
if (iDtmf == sizeof(idBtnDtmf)/sizeof(int))
return;


const idBtnDtmf:array [0..11] of Integer = ( 
IDC_BUTTON_DTMF0, IDC_BUTTON_DTMF1, IDC_BUTTON_DTMF2, IDC_BUTTON_DTMF3,
IDC_BUTTON_DTMF4, IDC_BUTTON_DTMF5, IDC_BUTTON_DTMF6, IDC_BUTTON_DTMF7,
IDC_BUTTON_DTMF8, IDC_BUTTON_DTMF9, IDC_BUTTON_DTMFA, IDC_BUTTON_DTMFP
);
var
iDtmf: Integer;
...

iDtmf := 0
whil iDtmf < (sizeof(idBtnDtmf) div sizeof(int)) do
begin
if (idBtn = idBtnDtmf[iDtmf]) then
break;
end;
if (iDtmf = sizeof(idBtnDtmf) div sizeof(int)) then
Exit;
netxk 2008-07-24
  • 打赏
  • 举报
回复
高手
僵哥 2008-07-24
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 Hegemon 的回复:]
h245Uii.m_s8Signal := szDtmf[iDtmf+1];
这句有问题m_s8Signal类型是byte类型,
h245Uii 在C++中的结构如下:
typedef struct
{
DJ_S8 m_s8String[100];
DJ_S8 m_s8Signal;
DJ_S8 m_Rfu[3];
DJ_U32 m_u32Duration;
}Acs_VoIP_H245UII;
[/Quote]
h245Uii.m_s8Signal := ord(szDtmf[iDtmf+1]);
Hegemon 2008-07-24
  • 打赏
  • 举报
回复
h245Uii.m_s8Signal := szDtmf[iDtmf+1];
这句有问题m_s8Signal类型是byte类型,
h245Uii 在C++中的结构如下:
typedef struct
{
DJ_S8 m_s8String[100];
DJ_S8 m_s8Signal;
DJ_S8 m_Rfu[3];
DJ_U32 m_u32Duration;
}Acs_VoIP_H245UII;
Hegemon 2008-07-24
  • 打赏
  • 举报
回复
int idBtnDtmf[] = {
IDC_BUTTON_DTMF0, IDC_BUTTON_DTMF1, IDC_BUTTON_DTMF2, IDC_BUTTON_DTMF3,
IDC_BUTTON_DTMF4, IDC_BUTTON_DTMF5, IDC_BUTTON_DTMF6, IDC_BUTTON_DTMF7,
IDC_BUTTON_DTMF8, IDC_BUTTON_DTMF9, IDC_BUTTON_DTMFA, IDC_BUTTON_DTMFP
};

for (int iDtmf = 0; iDtmf < sizeof(idBtnDtmf)/sizeof(int); ++iDtmf)
{
if (idBtn == idBtnDtmf[iDtmf])
break;
}
if (iDtmf == sizeof(idBtnDtmf)/sizeof(int))
return;

在上面还有这几句
僵哥 2008-07-24
  • 打赏
  • 举报
回复
const
szDtmf:String = '0123456789*#';
...
var
h245Uii: Acs_VoIP_H245UII;
...
case m_iDtmf of
0: begin
fillchar(h245Uii,sizeof(h245Uii),0);
h245Uii.m_s8Signal := szDtmf[iDtmf+1];
end;
...
僵哥 2008-07-24
  • 打赏
  • 举报
回复
const
szDtmf:String = '0123456789*#';
...
var
h245Uii: Acs_VoIP_H245UII;
...
case m_iDtmf of
0: begin
h245Uii := (0);
fillchar(h245Uii,sizeof(h245Uii),0);
h245Uii.m_s8Signal := szDtmf[iDtmf+1];
end;
...

5,931

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧