为什么在定义符号常量时const pi=3.14 没出错 而且和const int pi=3.14时 输出pi的值是一样的 但不等于3.14

这很简单啊 二者在效率和安全性上差别很大 所以**p就是 cout << p << endl;//这个式了输出的是p的值 就是指向p的地址 *p就是i的值2 int **pi = &p;//定义一个指向int类型的指针的指针 所以p的值是i的地址 赋值给p 就是指针就是地址 int i=2; p=&i;//取i的地址 出现你题目中所说的什么2300453或者189423这些.... ||| int 是整形 不能有小数 答案补充 const int &pi=3.14 这句话是将 3.14强制转换为整形 它会自动4舍5入 所以是3 答案补充 int *p;//定义一个指向int类型的指针 否则就会出错 值一定要与类型相对应 在进行赋值的时候 经编译后发现:const <类型> <变量> 当然不会有小数 其次 请不要混淆 #define定义的叫做符号常量 const定义的叫做常变量 我来老嘿嘿:首先要纠正楼主一个错误哈 问什么答什么嘛 而p的值是i的地 址所以此处输出i的地址. ||| 用float定义变量P 所以输出p的地址 cout << *pi << endl; //*取值运算..而pi中是p的地址.所以此时输出p的值 pi中存的是p的地址 当然输出p的地址 cout << pi <<endl;//如上所说 p本身也是变量 从这个地址中取值.当然是i cout << &p << endl; //&是取地址运算 如上所说是i的地址 cout << *p << endl;//*是取值运算..此是p是i的地址 楼上答得太罗嗦了 请把int改为float就可以了至于为什么输出会是一个无法预料的数字 int称为整型 因为你定义的变量类型是int型阿 为什么是3不是3.14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值