A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© lixp 中级黑马   /  2015-10-30 20:41  /  751 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
function:const(定义常量的方法)和指针的结合使用
  主要演示 const int *p 和 int * const p;两种定义方式的指针常量的区别
小贴士: #define和const的区别(虽然两个都是定义常量):
   1.const定义有类型的常量
   2.#define 只定义了一个常数,可以是任意字符串。
*/
#include<stdio.h>
int main(int argc,char *argv[]){
    int x=200,y=300;
    //用两种不一样的方式定义两个指针常量
    const int *p=&x;
    int * const q=&y;
    printf("x=%d  *p=%d\n",x,*p);
    printf("y=%d  *p=%d\n",y,*q);
    /*
    不可以间接的用*p改变a的值,但是可以使p指向别的变量
    *p=52;
        */
         p=&y;
     printf("x=%d  *p=%d\n",x,*p);
     /*
          像*q这种定义方式,可以间接的用*q改变变量的值
         */
     *q=52;
     printf("y=%d  *p=%d\n",y,*q);
     
         /* *q这种定义方式不能指向别的变量
         q=&x;
     printf("y=%d  *p=%d\n",y,*q);
     */
        return 0;
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马