码迷,mamicode.com
首页 > 其他好文 > 详细

[C_const]指针上的对比

时间:2014-08-02 17:59:03      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:io   ar   amp   har   c   return   指针   print   

#include "stdio.h"

int main(int argc, char const *argv[])
{
printf("Hello const of Goodboy Lee!\n");

// a和b是一个指向int类型的指针,无法通过a来改变指向的空间的值
const int *a;
int const *b;

// c是一个指向int类型的常量指针,无法改变a和b的指向
int c1 = 3;
int * const c = &c1;
int * const d; // 指向NULL, 无法改变指向,顾推荐赋初值
printf("*d = %p\n", d);

int a1 = 1;
int b1 = 2;
int c2 = 31;

a = &a1;
b = &b1;
// d = &c1; // 编译报错,无法重新赋值,需定义时赋初值

// 1. 试图通过a来改变a1的值
// *a = 2; // 编译报错
// 只能通过a1来修改a指向的变量即a1的值
a1 = 100;
printf("*a = %d, a1 = %d\n", *a, a1);

// 2. 试图通过b来改变b1的值
// c = &c2; // 编译报错,无法指向另一个空间
*c = 200;
printf("*c = %d, c1 = %d\n", *c, c1);

return 0;
}

[C_const]指针上的对比,布布扣,bubuko.com

[C_const]指针上的对比

标签:io   ar   amp   har   c   return   指针   print   

原文地址:http://www.cnblogs.com/webapplee/p/3887111.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!