一、指針的移動 1.1 指針的向前及向后移動 指針每次加一就是指針向前移動指針類型對應的字節數。下面通過一個int指針來指向一個int數組,看看指針的加法運算到底是個什么鬼? 運行結果如下圖所示: 可以看到,指針的加法就是向前移動指定類型字節數,在數組中就 ...
一 使用指針傳出分解后的數字 實現一個方法 多個返回值 的效果:返回一個三位數數字的個位 十位 百位。這里,我們借助指針來 返回 分解后的結果。這種應用也是最常見的指針應用。 測試數字為 ,調用parseNumber函數,將要返回的值的地址作為參數傳遞: 運行結果如下圖所示: 二 自己動手實現strlen 函數 我們知道strlen是計算字符串的長度,其內部是通過判斷是否以 作為結束符,雖然其不是 ...
2015-07-20 00:48 0 2012 推薦指數:
一、指針的移動 1.1 指針的向前及向后移動 指針每次加一就是指針向前移動指針類型對應的字節數。下面通過一個int指針來指向一個int數組,看看指針的加法運算到底是個什么鬼? 運行結果如下圖所示: 可以看到,指針的加法就是向前移動指定類型字節數,在數組中就 ...
一、不能動的“地址”—void指針 1.1 void指針初探 void *表示一個“不知道類型”的指針,也就不知道從這個指針地址開始多少字節為一個數據。和用int表示指針異曲同工,只是更明確是“指針”。 因此void*只能表示一個地址,不能用來&取值,也不能++--移動 ...
一個由C/C++編譯的程序占用的內存分為以下幾個部分: 1、棧區(stack):又編譯器自動分配釋放,存放函數的參數值,局部變量的值等,其操作方式類似於數據結構的棧。 2、堆區(heap):一般是由程序員分配釋放,若程序員不釋放的話,程序結束時可能由OS回收,值得注意 ...
一、使用sizeof計算數組長度 1.1 sizeof的基本使用 如果在作用域內,變量以數組形式聲明,則可以使用sizeof求數組大小,下面一段代碼展示了如何使用sizeof: ...
一、內存的使用 1.1 你創建的內存區域可能是臟的 當我們創建一個內存區域的時候,內存中的數據可能是亂七八糟的(可能是其他代碼用過后遺留的數據),如下面一段代碼: 其運 ...
很多人都知道this指針,這篇文章的主要目的是為了培訓我們公司的新人。 默認的this指針指向 規則1 this指針默認指向方法調用時為其指定的對象,如:obj.fun(),fun方法體中的this指針指向obj。 規則2 如果在方法調用時沒有為方法指定對象 ...
Python中自帶了幾個比較有意思的函數,一般在面試或者筆試基礎的時候會問到,其中3個就是map、filter、reduce函數。 1.map(function, iterable) 它第一個要傳的元素是函數名或lambda匿名函數表達式,第二個元素傳入可迭代對象。 array ...
1.什么是指針: 指針是一個存儲計算機內存地址的變量,即指針變量里面存放的是內存地址。 2.操作符:*和& 操作符*根據出現的位置不同,既可以用來聲明一個指針變量,也可以用作指針的取值。當用在聲明一個變量時,*表示這里聲明了一個指針。其它情況用到*表示指針的取值。 & ...