请问外部变量和内部变量是什么意思? |
| 电脑学习网,xuef.com,最全最新最权威的电脑知识网站. |
感到好抽象,外部,内部指的是哪里? 是对于储存器来说的,还是程序。  ------- 看那C语言部懂的概念 这是由于程序分块编译造成的。对于大型程序来说,一般有很多个小程序,每个小程序都是一个独立的编译单元。由于每个程序不可避免地要引用其它程序的变量,所以在编译时,要暂时不分配地址,而编译单元中的变量可以直接分配地址。这种编译上的不同,造成外部变量和内部变量上的差异。外部变量的地址定位要等到连接时才能完成。 哪里出现的
现在好像都没有这个说法了吧
如果有那也应该是对可见性来说
外部变量可以被其它文件访问
内部变量只能在定义的范围内访问(在文件内定义的就是在此文件内被访问 在函数内定义的就是在函数内可以访问) 谢谢大家,我懂了。但要在以后实践中才能理解得透。
随便在这里问个问题。 5 % 10 == 5 2 % 89 == 2 怎么会这样? 不是前面的数的绝对值要大于被除书的绝对值才行的吗 ? 我的理解,前面的数,2和5,就是被除数。 10和89是除数。 按照你的做法
5 % 10 == 0 2 % 89 == 1 和结果不同哦 这里不得不给个忠告,哪里不懂,赶快找本书看看,再不看,只会不停的重复过去的错误,永远停留在原地。 比如: 5 % 10 == 5 我可以说右边不一定是 5,右边可以是任何整数。 因为这个本身是一条关系表达式,在 c 语言里 == 是关系运算符,并不等同于 =,两者意思相差十万八千里,如果平时不注意这些细节,那么你编程时会吃很多的苦头,有时候你可能跟本查不出错误在哪里。 求余数运算看似简单,有些地方还是比较有趣的,不动手实验一下,会判断错误。如负数取余数: 代码: #include <stdio.h>
int main()
{
printf (" -1 % 10 = %d\n", -1 % 10);
printf ("(-1) % 10 = %d\n", (-1) % 10);
printf (" 1 % (-10) = %d\n", 1 % (-10));
printf ("(-1) % (-10) = %d\n", (-1) % (-10));
return 0;
}不测试一下,你答得上来吗? 5除以10商0余5, cout<<(5%10): 将输出余数,5,而不是商,0. ==可以作等号(=)用,但在你贴出的表达式中,==作关系运算符,用于比较左边和右边的值是否相等,相等,则整个表达式的值为1,反之,为0。 cout<<(5%10==5)<<(5%10==4)<<endl; 这是我的理解,不一定都正确。
|
|
|
|
|
|
|