-
對于這個局部的棧變量,在函數(shù)開始的時候分配,在函數(shù)結(jié)束的時候自動被銷毀掉。查看全部
-
局部變量 代碼塊中定義的變量被稱之為局部變量。它們在其他函數(shù)的語句中是不可見的,也無法訪問它們查看全部
-
指針加1操作,需要看指針的類型(char,short,int),不同的類型加1代表指針地址加了對應(yīng)類型的地址,比如int為4個地址,?1代表指針地址加了4查看全部
-
對一個已經(jīng)賦值成了 nullptr 的指針再進(jìn)行 free 操作,就不會有問題了。查看全部
-
在 C++ 中有一個空指針的概念,當(dāng)你把一個指針賦值成空指針的時候,就意味著這個指針不指向任何地方。 int * p = nullptr;查看全部
-
#include <stdio.h> #include <stdlib.h> int main(int argc,char **argv) { int * p = (int *)malloc(2 * sizeof(int)); free(p); free(p); return 0; } 代碼塊預(yù)覽復(fù)制 這段代碼中,我們將一個指針重復(fù) free 了兩次,在第一次 free 之后,相應(yīng)的內(nèi)存被釋放了,但是指針還是指向原來的位置,重復(fù)釋放,就會出問題,運行結(jié)果如下 運行失敗 /bin/bash: line 1: 29091 Segmentation fault (core dumped) index查看全部
-
int * p; 代碼塊預(yù)覽復(fù)制 不對其進(jìn)行初始化,那么這個指針也和普通變量一樣,他的值也是一個任意值,既然是任意值,那么其實是無法確認(rèn)這個指針指向哪里的。 無法確認(rèn)指向的指針,或者指向一個無效地址的指針,我們把他叫做野指針。查看全部
-
指針指向函數(shù)的場景: 當(dāng)產(chǎn)品經(jīng)理說要在你的代碼中,插入不同的代碼時,我們就可以用指針指向一個函數(shù),傳參時傳入函數(shù)的指針就可以查看全部
-
通過指針來訪問數(shù)組元素:*(p+1)查看全部
-
比較特殊的是,數(shù)組名就是一個指針,不過數(shù)組名是一個常量指針,不能做累加或者累減操作。查看全部
-
現(xiàn)在大部分的機(jī)器,都采用了小端字節(jié)序。但是在 IO 方面,則大部分使用大端字節(jié)序。例如,你要使用網(wǎng)絡(luò)發(fā)送一個 int 類型的變量,要先把 int 轉(zhuǎn)換成大端字節(jié)序,然后通過網(wǎng)絡(luò)發(fā)送。查看全部
-
我們現(xiàn)在有一個整數(shù)是258。用16進(jìn)制表示是0x0102,然后我們把這個整數(shù)拆分成兩個字節(jié),第一個字節(jié)為 0000 0001,第二個字節(jié)為 0000 0010。 如果在一個使用大端字節(jié)序的電腦上,這個整數(shù)會被這樣存放: 低字節(jié)存儲在內(nèi)存的高位上 如果一個使用小端字節(jié)序的電腦上,這個整數(shù)的高字節(jié)就會存放在高地址上: 低字節(jié)存儲在內(nèi)存的低位上查看全部
-
字節(jié)序,就是 大于一個字節(jié)類型的數(shù)據(jù)在內(nèi)存中的存放順序查看全部
-
<< 左移 各位全部左移若干位,高位丟棄,低位補(bǔ) 0 。 >> 右移 各二進(jìn)位全部右移若干位,對無符號數(shù),高位補(bǔ) 0 ,有符號數(shù),各編譯器處理方法不一樣,有的補(bǔ)符號位,有的補(bǔ) 0查看全部
-
^ 異或 若參加運算的兩個二進(jìn)制位值相同則為0,否則為1。查看全部
舉報
0/150
提交
取消