C++ 基礎(chǔ)教程

C++ 流程控制

C++ 函數(shù)

C++ 數(shù)組 & 字符串

C++ 數(shù)據(jù)結(jié)構(gòu)

C++ 類(lèi) & 對(duì)象

C++ 指針

C++ 繼承

C++ STL 教程

C++ 參考手冊(cè)

C ++ 結(jié)構(gòu)體指針

在本文中,您將找到相關(guān)的示例,這些示例將幫助您使用指針來(lái)訪問(wèn)結(jié)構(gòu)中的數(shù)據(jù)。

指針變量不僅可以為本機(jī)類(lèi)型(int、float、double等)創(chuàng)建,還可以為用戶(hù)定義的類(lèi)型(如結(jié)構(gòu)體)創(chuàng)建。

如果您不知道什么是指針,請(qǐng)?jiān)L問(wèn)C ++指針。

這是創(chuàng)建結(jié)構(gòu)體指針的方法:

#include <iostream>
using namespace std;

struct temp {
    int i;
    float f;
};

int main() {
    temp *ptr;
    return 0;
}

這個(gè)程序創(chuàng)建一個(gè)結(jié)構(gòu)類(lèi)型為temp的指針ptr。

示例:結(jié)構(gòu)體指針

#include <iostream>
using namespace std;

struct Distance
{
    int feet;
    float inch;
};

int main()
{
    Distance *ptr, d;

    ptr = &d;
    
    cout << "輸入英尺: ";
    cin >> (*ptr).feet;
    cout << "輸入英寸: ";
    cin >> (*ptr).inch;
 
    cout << "顯示信息" << endl;
    cout << "距離 = " << (*ptr).feet << " 英尺 " << (*ptr).inch << " 英寸";

    return 0;
}

輸出結(jié)果

輸入英尺: 4
輸入英寸: 3.5
顯示信息
距離 = 4 英尺 3.5 英寸

該程序定義了結(jié)構(gòu)體類(lèi)型的Distance,擁有指針變量*ptr和普通變量d。

變量d的地址存儲(chǔ)在指針變量中,即ptr指向變量d,然后使用指針訪問(wèn)變量d的成員函數(shù)。

注意:由于指針ptr在此程序中指向變量d,因此(* ptr).inch和d.inch是完全相同的單元。 同樣,(* ptr).feet和d.feet是完全相同的單元。

使用指針訪問(wèn)成員函數(shù)的語(yǔ)法很丑陋,但是還有一種更常見(jiàn)的代替符號(hào)->。

ptr->feet 等同于  (*ptr).feet
ptr->inch 等同于  (*ptr).inch
丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清