#include "stdafx.h"
#include "stdlib.h"
int main()
{
const int c = 0;
int *p = (int*)&c;//p指向变量c
printf("Begin..\n");
*p = 5;
printf("c = %d\n", c);//C++中不会改变c的值,如果是在C语言中就会改变c的值
printf("End...\n");
printf("*p = %d\n", *p);//会改变*p的值
system("pause");
return 0;
}
const与宏的区别
// const 与宏的区别.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "stdlib.h"
void f()
{
#define a 3
const int b = 4;
}
void g()
{
printf("a =%d\n", a);//这里之所以可以直接应用a是因为宏,在预处理器就把a等价于3了,不经过编译器
//printf("b = %d\n",b);//这里不能编译通过,是因为b 是在f中的定义的局部变量,只在定义它的函数体内可见,外部函数不可见
}
int main()
{
const int A = 1;
const int B = 2;
int array[A + B] = { 0 };
int i = 0;
for (i =0;i<(A+B);i++)
{
printf("array[%d] = %d\n", i, array[i]);
}
f();
g();
system("pause");
return 0;
}