zoukankan      html  css  js  c++  java
  • 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     // 来源地址 : 禁止写入 - 可以读取
    );
    
    
  • 相关阅读:
    .ssh/config 文件的解释算法及配置原则
    不fq安装 golang tools
    iOS 组件化的几篇文章
    第一把机械键盘 ikbc C-87
    我推荐的 Java Web 学习路线
    【吐槽向】iOS 中的仿射变换
    Spring 对缓存的抽象
    Spring 事务管理笔记
    Swift 笔记汇总
    Java 类加载器
  • 原文地址:https://www.cnblogs.com/huafan/p/11519044.html
Copyright © 2011-2022 走看看