翻译简单的Dephi代码到C

nibys 2011-07-12 03:28:35
arrRec: array of Byte;
arrRec[i] := Byte (StrToInt ('$' + Chr (arrRec[i])));
If (arrRec[i] And 8) = 8 Then
Begin
End;


我的翻译:
unsigned char arrRec[] = { ... };
arrRec[i] = // ?
if (arrRec[i] & 8 == 8)
{
}

请帮忙。
...全文
87 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
至善者善之敌 2011-07-13
  • 打赏
  • 举报
回复


void main(){
char arrRec[] = {'A','B','C','D','E'};
int changeover[5];
for(int i=0; i<5; i++)
{
char ch[3] = {0};
sprintf(ch, "%d", arrRec[i]-65+10);
changeover[i]=atoi(ch);
cout<<changeover[i]<<endl;
if((changeover[i] & 8) == 8)
{
cout << "ok" << endl;
}
}
}
TitanQuest 2011-07-12
  • 打赏
  • 举报
回复
arrRec[i] := Byte (StrToInt ('$' + Chr (arrRec[i])))
函数chr是把arrRec[i]的值转换为对应的字符,比如arrRec[i]等于65,转换后为A
然后把字符串“$A”转换为数字,即为10,然后再转换为Byte型
你要知道pascal和c强制转换的区别
c: (类型)变量
pascal:类型(变量)
国风 2011-07-12
  • 打赏
  • 举报
回复
错了,呵呵

byte arrRec[] = {123456789};

for(int i=0; i<10; i++)
{
char ch[5] = {0};
sprintf(ch, "%s%c", "0x", arrRec[i]);
arrRec[i] = (byte)atoi(ch);

if((arrRec[i] & 8) == 8)
{
cout << "ok" << endl;
}
}
国风 2011-07-12
  • 打赏
  • 举报
回复

byte arrRec[] = {123456789};

for(int i=0; i<10; i++)
{
char ch[5] = {0};
sprintf(ch, "%c%c", '$', arrRec[i]);
arrRec[i] = (byte)atoi(ch);

if((arrRec[i] & 8) == 8)
{
cout << "ok" << endl;
}
}
国风 2011-07-12
  • 打赏
  • 举报
回复

byte arrRec[] = {123456789};

for(int i=0; i<strlen((const char *)arrRec); i++)
{
char ch[5] = {0};
sprintf(ch, "%c%c", '$', arrRec[i]);
arrRec[i] = (byte)atoi(ch);

if((arrRec[i] & 8) == 8)
{
cout << "ok" << endl;
}
}
nibys 2011-07-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 titanquest 的回复:]

$ 的作用是 16进制, Byte型数据c也有,
If (arrRec[i] And 8) = 8 Then 的and就是按位与的意思,对于c的&
delphi “=” 号是等于判断,赋值号是 “:=”
[/Quote]
谢谢!!
那这个代码如何翻译呢?

arrRec[i] := Byte (StrToInt ('$' + Chr (arrRec[i])));
TitanQuest 2011-07-12
  • 打赏
  • 举报
回复
$ 的作用是 16进制, Byte型数据c也有,
If (arrRec[i] And 8) = 8 Then 的and就是按位与的意思,对于c的&
delphi “=” 号是等于判断,赋值号是 “:=”
nibys 2011-07-12
  • 打赏
  • 举报
回复
另外,这一句我感觉我翻译的不对啊。

If (arrRec[i] And 8) = 8 Then
nibys 2011-07-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 bdmh 的回复:]

StrToInt那句话是把16进制的数转为10进制,你网上找一个转换方法就是了

delphi那段代码也没体现数组的初始化,所以没法翻译
[/Quote]
麻烦仔细看下:
arrRec[i] := Byte (StrToInt ('$' + Chr (arrRec[i])));

这里为什么要把arrRec[i]的值又赋给arrRec[i]?
$的作用是什么?
Byte相当于什么?
wyfwx 2011-07-12
  • 打赏
  • 举报
回复

unsigned char arrRec[] = { ... };
for(int i =0; i < sizeof(arrRec); i++)
{
unsigned chat ch = arrRec[i];
arrRec[i] = (unsigned char)atoi(ch);
if (arrRec[i] & 8 == 8)
{
}

}
wyfwx 2011-07-12
  • 打赏
  • 举报
回复
StrToInt没有现成的函数
bdmh 2011-07-12
  • 打赏
  • 举报
回复
StrToInt那句话是把16进制的数转为10进制,你网上找一个转换方法就是了

delphi那段代码也没体现数组的初始化,所以没法翻译
Mastering Delphi 7(Delphi7从入门到精通)虽然是英文版的,不过是好书呀,压缩包含配书代码!Introduction(目录): Part I - Foundations (基础) Chapter 1 - Delphi 7 and Its IDE (DELPHI7及集成环境) Chapter 2 - The Delphi Programming Language (DELPHI7编程语言) Chapter 3 - The Run-Time Library (运行库) Chapter 4 - Core Library Classes (核心类库) Chapter 5 - Visual Controls (虚拟组件) Chapter 6 - Building the User Interface (建立用户界面) Chapter 7 - Working with Forms (从窗体开始学习) Part II - Delphi Object-Oriented Architectures (对象向导体系) Chapter 8 - The Architecture of Delphi Applications (应用程序体系) Chapter 9 - Writing Delphi Components (写Delphi组件) Chapter 10 - Libraries and Packages (库和包) Chapter 11 - Modeling and OOP Programming (with ModelMaker) (面向对象程序程序设计建造模块) Chapter 12 - From COM to COM+ (从。。。不用翻译了吧) Part III - Delphi Database-Oriented Architectures (数据库向导体系) Chapter 13 - Delphi's Database Architecture (数据体系) Chapter 14 - Client/Server with dbExpress (dbE.. 的客户/服务模式) Chapter 15 - Working with ADO (应用ADO) Chapter 16 - Multitier DataSnap Applications (多层DataSnap应用) Chapter 17 - Writing Database Components (写数据组件) Chapter 18 - Reporting with Rave (Rave报表) Part IV - Delphi, the Internet, and a .NET Preview (。。。预览) Chapter 19 - Internet Programming: Sockets and Indy (互联网编成。。。) Chapter 20 - Web Programming with WebBroker and WebSnap (。。。) Chapter 21 - Web Programming with IntraWeb (。。。) Chapter 22 - Using XML Technologies (运用XML技术) Chapter 23 - Web Services and SOAP (。。。) Chapter 24 - The Microsoft .NET Architecture from the Delphi Perspective (Delphi的.NET体系) Chapter 25 - Delphi for .NET Preview: The Language and the RTL Appendix A - Extra Delphi Tools by the Author (附录A) Appendix B - Extra Delphi Tools from Other Sources (附录B) Appendix C - Free Companion Books on Delphi (附录C) Index List of Figures List of Tables List of Listings List of Sidebars(我随便翻译的,不准笑,“。。。”表示没得翻。)

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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