-
* 取內(nèi)容符
查看全部 -
函數(shù)的參數(shù)是形參,a、b為參數(shù)名,將a,b傳遞進函數(shù)的時候,傳入的是兩個數(shù)值,在函數(shù)里a、b相當于局部變量,無論怎么改變,有效范圍只在該函數(shù)里面,對于main里面的a和b是沒有影響的。即函數(shù)在傳遞數(shù)值的時候是默認把變量里的值傳進去,故傳入的值是實參,而a、b作為一個代號只代表一個變量的名稱,而且該變量在函數(shù)里面就相當于一個局部變量,無法影響主函數(shù)。
查看全部 -
char類型的指針變量里面的值在代碼段?
用scanf輸入數(shù)組類型的值時 可以不用加& 因為數(shù)組名稱本身就是地址?
指針類型的字符串不能輸入?char *p="hello world" 中的hello world 不不允許被修改的,因為它儲存于代碼段,而非堆或棧中
只有堆和棧里面可以進行修改數(shù)據(jù),代碼段不允許修改數(shù)據(jù)
字符串遇到\0就結(jié)束不會打印后面
查看全部 -
指針類型的加減做的是地址的偏移(表示把內(nèi)存地址進行移動)
p[3]表示 把p往下偏移移動三格(=> p+=3)
數(shù)組的本質(zhì)也是一種指針;任何需要用數(shù)組操作的地方都可以用指針來操作;因為指針和數(shù)組本質(zhì)上都是內(nèi)存地址。
但反過來則不一定,所有指針能操作的數(shù)組不一定能夠操作。數(shù)組名不可以被操作。即“array+=2” 會報錯。
p是一個指針變量,是一個可以指向不同地址的量;而array本質(zhì)上是一種指針常量。
指針常量能操作的一般指針變量也可操作,但指針變量可以把指針指向別的地方而指針常量則不可以,即array一旦聲明指向了某個地址則永遠指向這個地址而不能被改變。
數(shù)組和指針可以有一定的通用性又有一定的差別。
查看全部 -
任何一個指針,變量名稱本身:指向變量所在的地址;
在變量名稱前加*:通過該地址去找地址里的內(nèi)容;
查看全部 -
最下面的內(nèi)存最先分配
最先分配的棧地址反而更大
棧的特點:先進后出
靜態(tài)變量不在棧里頭,相同變量名稱的靜態(tài)變量分別在兩個函數(shù)里便為兩個不同變量,屬于每個函數(shù)特有的;
全局變量為所有函數(shù)公用的。其地址不變。
一個函數(shù)被多次調(diào)用時,靜態(tài)變量指向的還是數(shù)據(jù)段一個固定的地址;即不同函數(shù)的count是不同的count,但同一個函數(shù)不管調(diào)用多少次count,它指向的都是數(shù)據(jù)段的某個地址。
查看全部 -
每調(diào)用一個函數(shù)都會分配一個棧內(nèi)存
先聲明的函數(shù)地址小,后聲明的函數(shù)地址大
而在棧中是相反的
查看全部 -
在棧中 一個函數(shù)可以被多次調(diào)用
每次調(diào)用函數(shù)都是一個獨立的棧
查看全部 -
棧存儲的為函數(shù)當前的運行狀態(tài)
查看全部
舉報