• 012 const


    /*
    目录:
       一 const赋值
       二 const改值
       三 应用
    */
    const 
        1 编译时检查
        2 运行时检查 - const全局变量

    一 const赋值

    // const赋值 - 全局变量
    #include "stdafx.h"
    
    const double PI = 3.1415;
    
    int main(int argc, char *argv[])
    {
        printf("%f
    ", PI);
        // PI = PI * 2;    error C3892: “PI”: 不能给常量赋值
        // printf("%f
    ", PI);
    
        
        return 0;
    }
    
    
    // const赋值 - 局部变量
    #include "stdafx.h"
    int main(int argc, char *argv[])
    {
        int j = 4;
        const int nNum = 3;
        const int *p = &nNum;
        // *p = 5;    // error C3892: “p”: 不能给常量赋值
        
        return 0;
    }


    二 const改值

    // const改值 - 局部变量
    #include "stdafx.h"
    
    int main(int argc, char *argv[])
    {
        const int nNum = 3;
        int *p = (int*)&nNum;
        *p = 5;
    
        return 0;
    }
    
    
    // const改值 - 全局变量
    #include "stdafx.h"
    
    const double PI = 3.1415;
    
    int main(int argc, char *argv[])
    {
        printf("PI = 0x%x
    ", (int)&PI);
        double *p = (double*)Π
        *p = 6.6;    // 运行中断
    
        return 0;
    }
    0x000416F2 处(位于 ConsoleApplication8.exe 中)引发的异常: 0xC0000005: 写入位置 0x00046BD8 时发生访问冲突。

    三 应用

    // 函数应用
    
    char *strcpy(
       char *strDestination,    // 目标地址
       const char *strSource     // 来源地址 : 禁止写入 - 可以读取
    );
    
    
  • 相关阅读:
    对Java课程的感想
    OO第二阶段总结
    OO第一作业周期(前四周)总结
    实验7 流类库和输入输出
    实验6 类的继承和多态
    实验5 类和对象3
    实验4 类与对象2
    实验3 类和对象
    实验2
    实验1
  • 原文地址:https://www.cnblogs.com/huafan/p/11519044.html
Copyright © 2020-2023  润新知