gpt4 book ai didi

c - 如何完成这个C(汇编)字符到十六进制和二进制的转换代码?

转载 作者:行者123 更新时间:2023-11-30 21:35:23 25 4
gpt4 key购买 nike

我需要编写一个汇编程序,在其中输入“abcd”,它会为我自己的行上的每个字母提供十六进制和二进制等效值。所以我需要在我的代码中使用以下内容:

setmode(fileno(stdin), O_BINARY);

到目前为止,我已经有了这个,但似乎无法编译它。我错过了什么,我可以改变什么?谢谢。到目前为止,我有这个:

    int main(void);
{

char c;
int numChars = 0;

setmode(fileno(stdin), O_BINARY);
while(read(STDIN_FILENO, &c, ') > 0){
++numChars;
}
printf("%d\n", numChars);

return 0;
}

最佳答案

三个问题:

没有头文件。 printffileno 需要 stdio.hread 需要 io.h > 和 setmode (setmode 是仅限 Windows 的函数;在 Linux 上,您将包含 unistd.h 用于读取 )。

这个:

int main(void);

是函数声明,而不是定义。去掉 ;:

int main(void);

最后:

while(read(STDIN_FILENO, &c, ') > 0){

您有一个 ',其中应该有一个要读取的字节数的值。这应该是 1:

while(read(STDIN_FILENO, &c, 1) > 0){

关于c - 如何完成这个C(汇编)字符到十六进制和二进制的转换代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35045003/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com