人 们经常声称这里有几个问题是那种要翻一下书才能回答的问题,我同意这种说法。当我写这篇文章时,
为了确定语法的正确性,我的确查了一下书。但是当我被面试 的时候,我期望被问到这个问题(或者相
近的问题)。因为在被面试的这段时间里,我确定我知道这个问题的答案。应试者如果不知道所有的答案
(或至少大部分答 案),那么也就没有为这次面试做准备,如果该面试者没有为这次面试做准备,那么
他又能为什么出准备呢?
3530
关键字 3530 的作用是什么?
这个简单的问题很少有人能回答完全。在 语言中,关键字 3530 有三个明显的作用:
$在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。
$在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外
其它函数访问。它是一个本地的全局变量。
"$在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在
声明它的模块的本地范围内使用。
大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一
个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。
3
F.关键字 3 有什么含意?
我 只要一听到被面试者说:)3 意味着常数),我就知道我正在和一个业余者打交道。去年 55B
已经在他的文章里完全概括了 3 的所有用法,因此 译者:C7@3C
<5CC0<$的每一位读者应该非常熟悉 3 能做什么和不能做什么如果你从没有读到那篇文章,
只要能说出 3 意味着)只读)就可 以了。尽管这个答案不是完全的答案,但我接受它作为一个正确的
答案。(如果你想知道更详细的答案,仔细读一下 5B 的文章吧。)
如果应试者能正确回答这个问题,我将问他一个附加的问题:
下面的声明都是什么意思?
30358
03358
30358
03358
033538
==
前 两个的作用是一样,5 是一个常整型数。第三个意味着 5 是一个指向常整型数的指针(也就是,整型数
是不可修改的,但指针可以)。第四个意思 5 是一个指向整型 数的常指针(也就是说,指针指向的整型
数是可以修改的,但指针是不可修改的)。最后一个意味着 5 是一个指向常整型数的常指针(也就是说,
指针指向的整型数 是不可修改的,同时指针也是不可修改的)。如果应试者能正确回答这些问题,那么
他就给我留下了一个好印象。顺带提一句,也许你可能会问,即使不用关键字 3,也还是能很容易写
出功能正确的程序,那么我为什么还要如此看重关键字 3 呢?我也如下的几下理由:
$关键字 3 的作用是为给读你代码的人传达非常有用的信息,实际上,声明一个参数为常量是为了
评论0
最新资源