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