程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++面試題:++i和i++哪個效率高?,試題效率高

C++面試題:++i和i++哪個效率高?,試題效率高

編輯:C++入門知識

C++面試題:++i和i++哪個效率高?,試題效率高


1、當變量i的數據類型是c++語言默認提供的類型的話,他們的效率是一樣的。

從其匯編執行的條數是一樣的,所以其執行效率是一樣的(有興趣可以用gdb查看匯編代碼) 

 2、我們自定的數據類型,++i效率高於i++,通過運算符重載來給大家說明這一點。

Operator Operator::operator++()
{
   ++value;    //內部成員變量
   return *this;
}

Operator Operator::operator++(int)
{
 Operator temp;
 temp.value=value;
 value++;
 return temp;
}

後++必須要有一個臨時對象才可以完成,產生臨時對象,需要發生一系列的拷貝動作,效率自然比直接引用對象低很多。


一道IT行業c語言相關面試題代碼執行快慢問題本人搞不懂他想面什

一般來說,第一種情況快;因為只有一個for,只需要循環一次;第二種情況需要循環3次(有3個for)
循環體 A ==> break; B==>break; C==>break;且N>=3時最快
====
面試這樣的題目的目的嘛,也許是腦筋急轉彎?

 

C語言靈活性與執行效率高是什

C語言語法 非常靈活

比如 for 循環 就可以有多種寫法

for (i = 0; i < 10; i++)
for (i = 0; i < 10;)
for (;;;)
等等
可以在不同情況下采用

執行效率高單就速度效率來說

c語言效率比大多數高級語言效率要高
高質量的c代碼編譯後生成的匯編代碼比人工寫的
高質量匯編代碼效率相差不超過20%

所以 c 語言適合編寫大型系統 比如操作系統等等
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved