繁体   English   中英

如何在ARMv8 Assembly中输入EOF?

[英]How to type EOF in ARMv8 Assembly?

我正在将ARMv8指令集与Aarch64执行状态一起使用。 我遇到的问题被认为是将C代码转换为汇编代码,而我遇到的问题如下:

while (c != '\n' && c != EOF)
    c = getchar();

我知道while循环的基本设置,以及如何测试c != '\\n'但是我的问题是如何在汇编中编写EOF 我可以输入吗

cmp c_r, EOF
b.eq skipwhile

或者是别的什么?

这取决于您在汇编中为getchar()使用的是什么代码-

  • 如果仅使用对标准C库getchar()的汇编版本的调用,则可以使用C库的EOF定义(通常为-1
  • 如果要在汇编中实现自己的getchar() ,则需要在测试到达文件末尾时将测试与getchar()实现的返回值进行匹配。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM