[root@ecs-miguel builtin]# vim globalBuiltin.c [root@ecs-miguel builtin]# gcc -E globalBuiltin.c -o globalBuiltin.i [root@ecs-miguel builtin]# gcc -S globalBuiltin.i -o globalBuiltin.s [root@ecs-miguel builtin]# gcc -c globalBuiltin.s -o globalBuiltin.o [root@ecs-miguel builtin]# gcc globalBuiltin.o -o globalBuiltin [root@ecs-miguel builtin]# ./globalBuiltin out is 1f561601为什么最后输出的跟我输入的不同
时间: 2023-06-15 20:07:36 浏览: 36
您输入的命令是 `./globalBuiltin out is 1f561601`,它的意思是运行 `globalBuiltin` 程序,并将字符串 `"out"`、`"is"` 和 `"1f561601"` 作为命令行参数传递给它。
当程序运行时,它会首先将这些命令行参数打印出来,然后调用 `atoi()` 函数将最后一个参数 `"1f561601"` 转换为整数并打印出来。
因为您输出的结果是 `1f561600` 而不是 `1f561601`,可能是由于 `atoi()` 函数的舍入误差导致的。您可以尝试使用 `strtol()` 函数来进行字符串到整数的转换,它可以提供更高的精度。
相关问题
[root@ecs-miguel builtin]# vim globalBuiltin.c [root@ecs-miguel builtin]# gcc -E globalBuiltin.c -o globalBuiltin.i [root@ecs-miguel builtin]# gcc -S globalBuiltin.i -o globalBuiltin.s [root@ecs-miguel builtin]# gcc -c globalBuiltin.s -o globalBuiltin.o [root@ecs-miguel builtin]# gcc globalBuiltin.o -o globalBuiltin [root@ecs-miguel builtin]# ./globalBuiltin out is 1f561601
这段代码是一个简单的C程序,首先使用vim打开文件globalBuiltin.c,然后使用gcc编译预处理器指令,将C代码转换为预处理后的代码,并将其输出到globalBuiltin.i文件中。接下来使用gcc编译器将预处理后的代码转换为汇编代码,并将其输出到globalBuiltin.s文件中。然后使用gcc编译器将汇编代码转换为二进制目标文件globalBuiltin.o。最后使用gcc链接二进制目标文件并生成可执行文件globalBuiltin,并运行它。程序的输出结果是“out is 1f561601”。
[root@ecs-miguel hello]# vim hello.s [root@ecs-miguel hello]# as hello.s -o hello.o hello.s: Assembler messages: hello.s:16: Error: junk at end of line, first unrecognized character is `\' [root@ecs-miguel hello]# ld hello.o -o hello ld: cannot find hello.o: No such file or directory
在执行 `as hello.s -o hello.o` 命令时,出现了一个语法错误,提示在第16行有垃圾字符。你需要打开 `hello.s` 文件,检查一下第16行是否存在语法错误。
在执行 `ld hello.o -o hello` 命令时,出现了一个错误提示,说找不到 `hello.o` 文件。这个错误通常是由于在执行 `as` 命令时出现了错误,导致汇编程序没有生成 `hello.o` 文件。你可以尝试重新执行 `as` 命令,并检查是否有其他错误提示。如果没有错误提示,那么你可以查看当前目录下是否存在 `hello.o` 文件,或者检查一下文件名是否拼写正确。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)