首頁 > 後端開發 > C++ > 在C語言中,指針是指向結構體的指針

在C語言中,指針是指向結構體的指針

王林
發布: 2023-08-26 18:45:05
轉載
1514 人瀏覽過

在C語言中,指針是指向結構體的指針

結構體指標保存了整個結構體的加法。

它用於建立複雜的資料結構,如鍊錶、樹、圖等。

成員可以使用稱為箭頭運算子 ( -> ) 的特殊運算子來存取結構體。

宣告

以下是C 程式設計中指向結構體的指標的宣告-

struct tagname *ptr;
登入後複製

例如- struct Student *s -

存取

#下面解釋如何存取結構體指標。

Ptr-> membername;
登入後複製

例如- s->sno, s->sname, s->marks;

範例程式

以下程式顯示了結構體指標的用法-

#include<stdio.h>
struct student{
   int sno;
   char sname[30];
   float marks;
};
main ( ){
   struct student s;
   struct student *st;
   printf("enter sno, sname, marks:");
   scanf ("%d%s%f", & s.sno, s.sname, &s. marks);
   st = &s;
   printf ("details of the student are");
   printf ("Number = %d</p><p>", st ->sno);
   printf ("name = %s</p><p>", st->sname);
   printf ("marks =%f</p><p>", st ->marks);
   getch ( );
}
登入後複製

輸出

讓我們運行上面的程序,將產生以下結果-

enter sno, sname, marks:1 Lucky 98
details of the student are:
Number = 1
name = Lucky
marks =98.000000
登入後複製

範例2

考慮另一個範例,它解釋了結構體指針的功能。

 即時示範

#include<stdio.h>
struct person{
   int age;
   float weight;
};
int main(){
   struct person *personPtr, person1;
   personPtr = &person1;
   printf("Enter age: ");
   scanf("%d", &personPtr->age);
   printf("Enter weight: ");
   scanf("%f", &personPtr->weight);
   printf("Displaying:</p><p>");
   printf("Age: %d</p><p>", personPtr->age);
   printf("weight: %f", personPtr->weight);
   return 0;
}
登入後複製

輸出

讓我們執行上面的程序,將產生以下結果 -

Enter age: 45
Enter weight: 60
Displaying:
Age: 45
weight: 60.000000
登入後複製

以上是在C語言中,指針是指向結構體的指針的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板