C语言的变量

变量(variable) 是源代码中表示一个存储场所、保存值的符号化地址

这是C/Java中关于变量的名词解释。

1.抽象

例如
int x=80;
变量x表示了内存中的某一块区间,例如从0013fed8到0013fedb这4字节,该4字节共同保存整数80;通常程序员不会在意、也不可能考虑x的具体位置,只要知道在程序中x表示某个位置,因此说x是符号化地址,是对数据的存储场所的抽象

如果程序中需要知道x的具体位置怎么办?这就引入了指针这一概念。程序员仍然使用符号化地址即变量,而这种新型变量保存的值,这是一个内存编址。

不要将变量直接理解成数学上的概念,或者说,不要看有“变量不同于常量,...”这种说法的垃圾书,变量不和文字/常量相比较。变量的值有两种,一种是可变的,const变量的值则是不可变的。

2.变量与函数名

某种程度上,函数原型的声明语句,可以理解成声明一个变量,请比较

int arr[5];

void foo (void);//

你可以把arr和foo 作为const变量。这里,你要注意C语言中,arr和foo 的不统一的问题。对于函数foo,有指针pt2Func时,

void (*pt2Func)(void) = NULL; 

我们可以

pt2Func = &foo;  //标准
pt2Func = foo;  //简写

但是,arr与&arr类型不同。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值