我正在使用具有Aarch64执行状态的ARMv8指令集。我遇到的问题是应该将C代码转换为汇编,我坚持以下内容:
while (c != '\n' && c != EOF)
c = getchar();
我知道while循环的基本设置,以及如何测试c != '\n'
,但我遇到的问题是如何在汇编中编写EOF
。
我可以输入
cmp c_r, EOF
b.eq skipwhile
还是别的什么?
答案 0 :(得分:0)
这取决于您在getchar()
-
getchar()
的汇编版本的调用,那么您可以使用C库的EOF
定义进行测试 - 通常为-1
。getchar()
,则需要将测试与getchar()
实现的返回值匹配到文件结尾。