C 菜鳥常見錯誤整理(第十二天)

2021-06-14 20:55:49 字數 1292 閱讀 8950

1、演算法

用乙個表示式,半段乙個數x是否是二的

n次方,不可用迴圈語句解析:2、4、8、16這樣的數轉化為二進

制數是10、100、1000、10000。如果x-1

後與x做與運算,答案若是0,則x是二的

n次方。答案!(x&(x-1))

2、乙個函式,求兩個數的平均,不用除法

double f(int x,int y)

3、將a、b兩個數交換,不用中間量

方法一:a=a+b;b=a-b;a=a-b;//當a=a+b比較大的時候就會越界

方法二:a=a^b;b=a^b;a=a^b;//無須擔心越界問題

4、容器

char* words = ;

size_t words_size = sizeof(word)/(size(char*));

vectorwords2(words, words + words_size); 這種初始化方式vector呼叫了vector(_iter _first, _iter _last)

拷貝構造

5、容器的初始化

cc; 建立乙個名為 c 的空容器。c 是容器型別名,如 vector,t 是元素型別,如 int 或 string 適用於所有容器。

c c(c2); 建立容器 c2 的副本 c;c 和 c2 必須具有相同的容器型別,並存放相同型別的元素。適用於所有容器。

c c(b,e);  建立 c,其元素是迭代器 b 和 e 標示的範圍內元素的副本。適用於所有容器。

c c(n,t); 用 n 個值為 t 的元素建立容器 c,其中值 t 必須是容器型別 c 的元素型別的值,或者是可轉換為該型別的

值。只適用於順序容器

c c(n);   建立有 n 個值初始化(第 3.3.1 節)(value-initialized)元素的容器 c。只適用於順序容器將乙個容器複製

給另乙個容器時,型別必須匹配:容器型別和元素型別都必須相同。

6、容器類容器

因為容器受容器元素型別的約束,所以可定義元素是容器型別的容器。例如,可以定義 vector 型別的容器 lines,

其元素為 string 型別的 vector 物件

注意,在指定容器元素為容器型別時,必須如下使用空格:

vector< vector> lines; // ok: space required between close

vector< vector> lines; // error: >> treated as shift operator

今天就到這裡,有不足的地方還請指正,謝謝大家!

C 基礎第十二天

1。絕對路徑和相對路徑 絕對路徑 通過給定的路徑直接在電腦中找到檔案 相對路徑 檔案相對於應用程式的路徑 在開發中盡量使用相對路徑 2 list和arraylist差不多 list可以把乙個集合轉換為陣列 3.裝箱 拆箱 裝箱 將值型別轉換成引用型別 拆箱 將引用型別轉換成值型別 int n 10 ...

JS第十二天

a dom2級規範定義了一些模組,用於dom1級,dom2級核心 為了不同的dom型別引入了一些與xml命名空間有關的方法,這些變化只在使用xml或者是xhtml文件的時才有用 對於httml文件沒有實際的意義,除了與xml命名空間有關的方法外,dom級核心 還定義了以程式設計凡事建立documen...

java第十二天

b 案例演示 a 非正規表示式實現 b 正規表示式實現 b 案例演示 b 案例演示 1 a b c 2 a 3 b c 4 c 組零始終代表整個表示式。b 案例演示 a 切割 需求 請按照疊詞切割 sdqqfgkkkhjppppkl b 替換 需求 我我 我 我.要 要要 要學 學學.學.編.編編....