永发信息网

c语言申请只读变量的方法

答案:3  悬赏:70  手机版
解决时间 2021-04-08 03:17
c语言申请只读变量的方法
最佳答案
#include

int main(void){
int x;
scanf("%d",&x);
const int y = (const int)x;
printf("%d",y);
//y = 12;//加上这句话会报错误,错误: 向只读变量‘y’赋值

return 0;
}
你做一个强制类型转换,就可以实现了追问但你这个是C++的编译环境才能通过,C语言的环境不通过追答你用的什么编译器?我写的就是c程序,也是在c的环境下编译的,完全可以通过,你是不是代码和我哪里不同或者编译器的问题?追问CodeWarrior,编写飞思卡尔芯片用的编译器追答我看看你的代码,常量你要在定义的时候就去做初始化,所以我才会在获取值以后才定义的常量并且初始化
全部回答
加const固定
比如变量a定义
const int a=10;追问但初始化之后能创建新变量吗,C语言不是C++追答没明白你的意思,初始化后,值就不能修改了
运行时创建变量?那就用malloc建立追问我的值要根据程序刚运行时的情况去定的,但之后就要使他固定下来。因为我发现我的程序受硬件的高频信号影响很大,所以要固定他
const 的用法追问C语言能申请新的变量吗?不是在运行程序前就要创建所有变量吗?追答当然能申请新变量,运行前申请的只有几种类型的变量例如 常量,全局变量,函数静态变量
如果要动态使用可以malloc(size)例如 32位系统中
int* p = (int*)malloc(4);追问用malloc申请空间后然后怎么使它变为只读变量追答动态申请的都是可读写的内存,否则怎么初始化和释放呀
int *p2;
const int *p1 =p2=(int*)malloc(4);
*p2=4;
free(p2);
上面的使用p1只能读该内存,但p2可以写和释放,用P1写会直接报错
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
缘份已尽的句子经典,诗词: 云淡风清缘已尽,
三清丹多少一盒
中国西部汽车城在哪里啊,我有事要去这个地方
名称字母表示面积公式底高面积平行四边形1.6c
隐藏的无线网络OPPOR9怎么连接
谁可以介绍一些塔防游戏给我? 就像Q宠社区古
老婆在不知情的情况下,是否有义务替老公还债
用饮料瓶怎样弄两个头的无线路由
女孩高中毕业能干什么?
单选题Myteachersarenice________us.A.toB.f
手机换屏幕要多少钱,乐视2手机换个屏需要多少
考古学出的箱子有什么用
叔丁苯在ALBr3下与溴单质反应生成什么?机理
厂里要开除人,我签五年合同,现在干了不到三
甘南海拔多少米,甘肃省天水市到甘南要是夏河
推荐资讯
求传奇世界王城答题的答案?
先化简,再求值:x2(2x)3-x(3x+8x4),其
MPACC毕业论文题目怎么选择
腰疼不可以做什么动作,做什么锻炼有帮
二月15号是什么星座
金桥焊接材料经销有限公司在什么地方啊,我要
股票加仓后的持仓现价怎么计算?
马兰士这个牌子的音响怎么样啊?据说挺不错的
老年人流眼泪用什么药,流泪英文怎么写
三个连续偶数的和是60,那么其中最大的一个是
寒蝉鸣泣之时第九集开头
安卓电视的系统和安卓手机的系统一样吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?