黑马程序员技术交流社区

标题: 很纠结的一个问题 [打印本页]

作者: 2014571245    时间: 2014-4-13 15:49
标题: 很纠结的一个问题
本帖最后由 2014571245 于 2014-4-19 13:08 编辑

刚才跟朋友谈论一段代码:
#include<stdio.h>
int main()
{
    const int a=200;
    int *p=&a;
    printf("a的值是%d\n",a );
    return 0;
}

结果是:
为什么编译的时候会有警告呢?求大神指教!!!


作者: 于清扬    时间: 2014-4-13 17:03
int *p=&a;这句的问题
换成int *p = a;
或者int *p;
       p = &a;
&这个是取地址运算符,你不能让p指向a的地址的地址吧?
作者: blz01003hm    时间: 2014-4-13 17:09
应该有两个警告
1个是指针p定义了没有使用
2个是const定义的a是不能改变值了的 即a=100是会出错的  但*p=100就能改变a的值了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2