c/c++语言开发共享什么“返回0x1;”是什么意思?

当在web上浏览项目的源代码时,我发现main中的一些return语句对我来说很奇怪:

 int main() { /* ... */ return 0x1; } 

所以主要是返回0x1 radix 16 ,但那是1 radix 10 ! 主要归还不应该0

那是不对的,对吗? 顺便问一下, return 0x0好吗?

    它返回1. 0x1只是hex值1。

    您也可以自由返回0x0。 它只是0的不同表示。如果你喜欢,你也可以使用八进制:)

    0x1或1没有区别。 这是相同的数字。 因此,您也可以返回0x0 – 这只是在代码中写入0的另一种方式。

    但是,假设返回是主块中的最后一行代码,那么你可能不应该返回1: main表示失败的非零返回码,如果程序运行到最后,那通常是成功的标志 – 所以你应该在这种情况下返回0。

    但是,完全有可能以相反的方式构建程序,因此返回1在这里也是正确的。

    简单地说,转换为:

     return 1; 

    通过在数字前加上’0x’,您可以在源代码中输入hex数字,例如0xFF = 255

    您的主函数可以返回您想要的任何值,这样您就可以有效地记录可能(或可能不)发生的任何错误情况。 如果该程序由询问返回值的进程调用,那么如果将返回值更改为0x0(或仅为0),则调用程序可能会意外地更改其行为。

    是, 0x1 (hex1)与1 (十进制1)相同。 所以,上面相当于普通return 1

    main不需要返回0. main “应该”返回作者想要返回的内容。 他们想要返回1 – 他们返回1.他们想使用hex表示法 – 他们使用hex表示法。

    有人只是觉得这样做。 没有其他解释。

    0x1只是写1另一种方式! 文字1在十进制或hex中是相同的。 但它并非总是如此,例如decimal 10不等于hexadecimal 10

    在此示例中, main()返回1.传统上,除0之外的任何返回值都被视为不成功完成。

    main()的返回值作为可执行文件的返回值/错误代码传递给外部调用者,例如ERRORLEVEL$?

    这意味着:返回1

    您可以使用hex格式的数字,如此0x …

    对于1,0x1只是hex。编译后没有区别。 0x0将等效为0。

    主函数的返回值通常不被系统使用。 但是如果程序被其他程序(例如安装程序)调用,它们可能会被它们检查。 如果一切正常,则返回0通常会返回0以指示错误。

    我觉得这个信息对你有帮助吗?
    根据https://codepad.org/的结果

     1) int main() { return 0x0; } Output: No errors or program output. 2) int main() { return 1x2; } //anythingxanything results below error error: invalid suffix "x2" on integer constant 3) int main() { return 0x2; } //0xanything results :exit failure except for 0 Exited: ExitFailure 1 

    结果根据https://www.comeaucomputing.com/tryitout/

     except 2nd case it is compilng correctly(succeeded) 

    结果依照

     GCC[g++] --- error return 1x0; except 2nd case all correct EDG_compiler --- error return 1x0; except 2nd case all correct Sun compiler --- error return 1x0; except 2nd case all correct 

    通过查看此结果..IT将第一和第三种情况视为hex.ANd将第二种情况视为不同(不是所有数字)表达式或变量..等等

    你真的明白基数是什么意思吗?

    Base-n数字使用0n-1 n个数字。 (A b A b-1 … A 1 A 0n = A b * n b + A b-1 * n b-1 + … A 1 * n 1 + A 0 * n 0

    因此1是有效的hex字符, 0x1表示1×16 0 ,其本身等于1

      以上就是c/c++开发分享什么“返回0x1;”是什么意思?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/549442.html

      (0)
      上一篇 2021年1月14日
      下一篇 2021年1月14日

      精彩推荐