欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C++指針學(xué)習(xí)第一天-創(chuàng)新互聯(lián)

1.對指針概念的理解

我們提供的服務(wù)有:成都網(wǎng)站設(shè)計、成都做網(wǎng)站、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、巴楚ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的巴楚網(wǎng)站制作公司

? 1.1 指針本身可以看成一個變量,于是變量類型現(xiàn)在有:整型變量 a;浮點型變量float b;指針型變量 *c.

指針的表示中,類型名 *指針 變量名,eg: int *a; char *p;

這個指針變量存儲的是一個地址,因此*p 可以將其存儲的地址上的東西表示出來;逆運算是取地址,將一個東西的地址算出來給指針p,這就是賦初值的過程。因為p手上拿著目標(biāo)的地址,形象地看就像牽著遛狗的繩子,所以叫它指針。(本身沒有什么特別的)

1.2 指針在定義的時候最好要賦初值,且特殊點在于,是將目標(biāo)變量的地址賦給它,像下面這樣。

int a = 5;
char *p = &a;

此時正在定義階段,所以*表示的不是地址的內(nèi)容,而表示p是一個指針變量,規(guī)范性要求。

? 1.3 指針之間交換地址,例如char *p; char*q;直接p = q;即可

2. 指針與數(shù)組的關(guān)系

? 2.1 可否這樣理解:一個數(shù)組的首地址就是指針。在賦值的時候,可以不需要*,像同類一樣,數(shù)組ch直接將它的頭部交給指針變量s,往后假如想要訪問第2個字母,可以ch[1],也可以s[1],也可以*(s+1)。當(dāng)然也有不同,ch是數(shù)組,所占的空間是一段連續(xù)的;而指針s只占一個類型的空間。

char *s;
    char ch[15]={"adskja saha"};
    cin.getline(ch,15);
    s = ch;

? 2.2 在函數(shù)中傳遞的形式

如果是數(shù)組的話,它的傳遞的格式大概像下面這樣:

void hanshu(int arr[]);

int main()
{
    int array[]= {0,1,2,3};
    hanshu(array);
}

形參帶個[ ],實際參數(shù)就是數(shù)組的名字;

類比下來,指針的傳遞格式可以是這樣的:

void hanshu(char *p)

int main()
{
    char *p;
    int a;
    hanshu(&a);
    hanshu(p);
}

形參定義一個指針,然后實際參數(shù)就是一個地址。

3.指針和字符串

? 字符串可以有兩種表示:字符數(shù)組和字符指針,和前面數(shù)組似乎是一個回事。需要注意的是,字符串作為參數(shù)傳遞只需傳遞首字母,因為結(jié)束有'\0'作為標(biāo)記。、

PS:若定義了指針變量s,并且把它和一個字符串的首地址掛鉤,對字符串的每個字母的訪問可以*s,然后下一個就直接s++,到*s==0的時候結(jié)束。

例子:統(tǒng)計一個字符串中單詞的個數(shù)。

函數(shù)部分:

//函數(shù)部分
int counnt(char *s)
{
    int cnt = 0;
    while(*s!='\0')
    {
        while(*s==' ') s++;
        if(*s!='\0')
        {
            cnt++;
            while(*s!=' '&&*s!='\0')
                s++;
        }
    }
    return cnt;
}
 //函數(shù):用字符指針傳遞首地址;
 //         向下掃描,while(*s不是'\0')
 //         當(dāng)遇到空格,++s,空轉(zhuǎn)不計數(shù);
 //         如果空格后面不是'\0',則遇到了字母;
 //         當(dāng)遇到字母,空轉(zhuǎn)結(jié)束,cnt++;
 //         當(dāng)仍然有字母,且不是'\0',空轉(zhuǎn)不計數(shù)。
 //         如果遇到空格,空轉(zhuǎn)結(jié)束,進入下一個循環(huán);
 //

定義和調(diào)用部分:

char *s;
    char ch[15];;
    cin.getline(ch,15);
    s = ch;
    cout<

結(jié)果:

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

本文名稱:C++指針學(xué)習(xí)第一天-創(chuàng)新互聯(lián)
本文來源:http://www.chinadenli.net/article40/didsho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄網(wǎng)站營銷網(wǎng)站設(shè)計網(wǎng)站維護App開發(fā)動態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)