zoukankan      html  css  js  c++  java
  • About the return value of the main function

    Many programmers can't understand why the main function must have a integer as the return value. They have been told that the return value of the main function is helpful to check the exit state of a program. However, nobody has been told how to do the check. Today, I found that we can get the return value of a program after it finishes executing by viewing the $? enviromental variable (with "echo $?" command).

    For example:
    Source file (TestRV.c):
    #include <stdio.h>
    int main()
    {
     int rt;
     scanf("%d",&rt);
     return rt;
    }
    Compile & Run as:
    $ gcc -o TRV TestRV.c
    $ ./TRV
    34
    $ echo $?
    34
    $ echo $?
    0
    (Enviornment: linux kernel 2.6.17, gcc 4.1.2, echo 5.96)
    Can you understand this easy program? Yes, it get your input to return as the return value of the main function, and the "echo $?" command has test the last return value and output. You may ask that why "echo $?" output "0" the second time. The answer is that its output is the return value of the main function of the first time you type "echo $?".
     
    But, there is still one question left: What does program "echo" do exactly?
    I'm not sure of that yet, just to be continued.

  • 相关阅读:
    Linux-文件目录管理
    20. 有效的括号
    242. 有效的字母异位词
    387. 字符串中的第一个唯一字符
    136. 只出现一次的数字
    14. 最长公共前缀
    268. 丢失的数字
    169. 多数元素
    26. 删除有序数组中的重复项
    283. 移动零
  • 原文地址:https://www.cnblogs.com/alexxyjiang/p/1882827.html
Copyright © 2011-2022 走看看