012 const
Posted huafan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了012 const相关的知识,希望对你有一定的参考价值。
/* 目录: 一 #define和typdef 二 宏函数 三 应用 */
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 // 来源地址 : 禁止写入 - 可以读取 );
以上是关于012 const的主要内容,如果未能解决你的问题,请参考以下文章