解引用:dereference,look at the contents of the address contained in

c语言中“解引用”为什么理解这么困难

对于c语言中指针的操作符有两个:&和*。对于&,好理解,翻译的也不错,就是“取地址”的意思。但对于*,翻译为“解引用”,字面意思不好理解,即使看了后面内容才知道不过是“取指针指向的地址的内容”,也仍然是觉得怪怪的,“解引用”这个词难记也难于从字面直接判断意思,以致时间长了还是感觉像见了熟悉的陌生人。

翻了好多资料,以及各种网上解释,现在大约有点意思了。依我现在的理解,约摸是这样:

“引用”这个词,出现最多的场景就是:在文章或者注脚里,写上“引用(或摘自)某某作者某篇文章”,意思很明了,就是出现在本文的不是作者自己的话,而是别个作者的话,于是“引用”的意思就是拿过来用。(一下提到”场景“,就是指的这个例子)

国外资料出现的一词“reference",应译为”参考,参照“,在我们中文技术资料上翻译为了”引用“,照上面说的那种场景,倒也可以理解的通。而”dereference“翻译为”解除参照“,资料上翻译为”解引用“,如果回到上面那种场景,那”解引用“或者”解除参照“就是:我们拿了(引用)别个作者的话,却没有注解(解除参照)说这是别人的话,实际上我认为”去引用化“也许更能表达这个过程或者这个意思。那么对应到C语言中,指针变量是存储”其它变量“的地址的,当我们用”*“去操作指针时,我们的意思就是把那个”其它变量“的内容拿过来放在这里,却不说明这是别人(在这里就是指针存储的变量)的东西,当然这只是类比。过程差不多相似,只要能帮助理解,就阿弥陀佛了。于是”解引用“这样来理解,貌似好多了。不知道大家懂我说的了没?汗

网上查的”dereference“在技术资料上翻译真是各种多阿,这里不说了,反正其它翻译也许更难理解。

翻译别国资料,用词真是难,毕竟两种语言词汇不一定完完全全的相对应。尤其技术资料,还要讲究专业术语,翻译成中文时,那是真的千挑万选,才搞出一个像”专业术语“的词汇来表达。现在国内作者翻译水平参差不齐,加上对术语的创造,使得翻译后的中文资料难于阅读啊。比如上面的”解引用“就是一例。再说个”正则表达式“,从字面意思来看,完全不懂,(谁要真能从字面看出意思来,那我拜你为神,来教教我吧),或许看英文都比我们自己的中文好理解一点。但是纯英文看的累,还慢,真是两难啊。

经考证,C语言是女的...原因如下: 1.无论你让他干什么,她绝对不可能自己找到方法。 2.总是用复杂的方法解决简单的问题 3.不可能自主认识到本身错误 4.浪费时间是十分正常的事情 5.无论跟她说什么,都得用她能理解的方式做充分说明 6.只要你有一点错,她一定可以挑出来 7.反正,是你的错

你可能感兴趣的:(嵌入式C技巧,语言,正则表达式,reference,存储,c)