zoukankan      html  css  js  c++  java
  • C语言中的返回值

                  *C语言中的返回值* 

    | 例子1

    错误代码演示:

    int* getX(){
         int x = 1;
            
         return &x;
    }

    说明:方法内部的局部变量会在方法被调用之后,被销毁,即:他的存储空间会被释放。所以像这个例子中的做法不会报错但是不建议,因为x的地址到了方法外面就不好使了。

    那么如果程序中我们就需要这样做的时候因该怎么办呢?

    方法是将x定义为静态的,即:static int x = 1;因为静态变量跟全局变量一样,程序运行期间都不会被销毁,存储空间在程序运行期会一直存在,所以就算方法调用之后该变量

    的地址任然有效。

    下面是正确的代码:

    int* getX(){
        static int x = 1;
    
        return &x;
    }
    Fist day
  • 相关阅读:
    网页加载进度条
    BFC
    Java — 基础语法
    Python — 多进程
    Python — 进程和线程
    Python — 面向对象进阶2
    Python — 面向对象编程基础
    Linnux 05
    Linnux 04
    Linnux 03
  • 原文地址:https://www.cnblogs.com/NULL-ROOT/p/10455203.html
Copyright © 2011-2022 走看看