左值表達(dá)式是什么意思 在C 中,為什么部分程序員喜歡在loop寫‘ i’而不是‘i ’?
在C 中,為什么部分程序員喜歡在loop寫‘ i’而不是‘i ’?傳統(tǒng)習(xí)慣被稱為“避免不必要的惡化”。在一般語言水平上,I比I快。在大量迭代中,這種積累有時(shí)更敏感,因此c程序員習(xí)慣于編寫這種顯式
在C 中,為什么部分程序員喜歡在loop寫‘ i’而不是‘i ’?
傳統(tǒng)習(xí)慣被稱為“避免不必要的惡化”。在一般語言水平上,I比I快。在大量迭代中,這種積累有時(shí)更敏感,因此c程序員習(xí)慣于編寫這種顯式優(yōu)化表達(dá)式。在具有良好現(xiàn)代優(yōu)化能力的編譯器中,智能分析在編譯階段會自動將語句調(diào)整為I,以保證可靠性。事實(shí)上,對于現(xiàn)代編譯器來說,以前的許多手動優(yōu)化經(jīng)驗(yàn)已經(jīng)過時(shí)。如果你這樣寫,可能不是這樣。經(jīng)過優(yōu)化后,看似笨拙的代碼可能會非常好,因?yàn)楝F(xiàn)代編譯器鼓勵程序員編寫可讀性和可理解性良好的代碼。優(yōu)化是由他們完成的,你不需要人工干預(yù)(甚至不認(rèn)為有可能優(yōu)化),所以過去在互聯(lián)網(wǎng)或大學(xué)里的許多經(jīng)驗(yàn)、技能和秘密技能實(shí)際上是錯誤的或多余的。
只需編寫代碼,直接準(zhǔn)確地表達(dá)您的想法和意圖。在大多數(shù)情況下,不要考慮優(yōu)化。
==和=的區(qū)別?
1、二者含義不同==是賦值數(shù);==是條件判斷句子是否相等的意思。2、 兩者的功能不同。1=的功能是將表達(dá)式的值賦給左值。表達(dá)式可以是左值,也可以是右值。所謂left值是指可以用于賦值操作左側(cè)的表達(dá)式。左值必須是可修改的,而不是常量。我們使用變量作為左值,我們可以看到指針和引用也可以是左值。2==左側(cè)內(nèi)容與右側(cè)內(nèi)容相同時(shí)返回1。其余時(shí)間返回0。==是一個(gè)運(yùn)算符,用于確定兩個(gè)值的大小是否相同。1例如,a==B是判斷變量a和B的值是否相等。如果a和B相等,則返回值為1;如果a和B不相等,則返回值為0。將給定值賦給變量的語句稱為賦值語句。每種編程語言都有自己的賦值語句,并且有不同類型的賦值語句。賦值可以是數(shù)字、字符串或表達(dá)式。需要注意的是,很多語言使用“等號”(即“=”)作為賦值數(shù),因此可能與通常的理解不同,所以在使用時(shí)要注意。