欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言結(jié)構(gòu)體指針的示例代碼

 更新時間:2025年07月14日 08:23:23   作者:暗影~行星  
本文主要介紹了C語言結(jié)構(gòu)體指針的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

案例一:

#include <stdio.h>
#include <stdbool.h>
#include <string.h>  // 添加string.h頭文件用于strcpy
//結(jié)構(gòu)體指針

//方式 1 : 先定義結(jié)構(gòu)體
struct Dog
{
    char *name;
    int age;
    char weight;
};

//方式 1 : 
char *get_dog_info(struct Dog dog)
{
    static char info[40];
    sprintf(info, "name:%s, age:%d, weight:%d", dog.name, dog.age, dog.weight);
    return info;
};

char *get_dog_info1(struct Dog *dog)
{
    static char info1[30];//靜態(tài)局部指針變量
    sprintf(info1, "name:%s, age:%d, weight:%d", dog->name, dog->age, dog->weight);
    return info1;
};


int main()
{
    //方式1
    struct Dog dog = {"旺財", 2, 10};
    printf("dog info: %s\n", get_dog_info(dog));

    //方式2
    struct Dog *dog1 = &dog;
    //或
    char *Info = NULL;
    Info = get_dog_info1(dog1);
    printf("dog1 info: %s\n", Info);
    printf("dog1 info: %s\n", get_dog_info1(dog1));
    return 0;
}

案例二:

#include <stdio.h>
#include <stdbool.h>
#include <string.h>  // 添加string.h頭文件用于strcpy
//結(jié)構(gòu)體指針

//方式 1 : 先定義結(jié)構(gòu)體
struct Box
{
   double length;
   double width;
   double height;
};

double bulk(struct Box *box)
{
    return box->length * box->width * box->height; //使用結(jié)構(gòu)體指針訪問結(jié)構(gòu)體成員
}



int main()
{
    //方式1
    struct Box box1;
    printf("請輸入長、寬、高:\n");
    scanf("%lf %lf %lf", &box1.length, &box1.width, &box1.height);
    printf("體積 = %.2lf\n", bulk(&box1)); //使用結(jié)構(gòu)體指針作為函數(shù)參數(shù)
    return 0;
}

案例三:

#include <stdio.h>
#include <stdbool.h>
#include <string.h>  // 添加string.h頭文件用于strcpy
//結(jié)構(gòu)體指針

//方式2 : 在函數(shù)中定義結(jié)構(gòu)體
struct Person
{
    char name[20];
    int age;
    double pay;
};

void print(struct Person *ptr)
{
    // printf("姓名:%s,年齡:%d,工資:%.2lf\n", p->name, p->age, p->pay); //使用結(jié)構(gòu)體指針訪問結(jié)構(gòu)體成員
    ptr->pay =( ptr->age > 18) ? 3000 : 1000;
}


int main()
{
    //方式2
    struct Person ptr11;
    printf("請輸入姓名、年齡\n");
    scanf("%s %d", &ptr11.name, &ptr11.age);

    print(&ptr11);
    struct Person *ptr = &ptr11;
    printf("姓名:%s ,年齡:%d ,工資:%.2lf \n", ptr->name, ptr->age, ptr->pay); //使用結(jié)構(gòu)體指針訪問結(jié)構(gòu)體成員
    return 0;
}

到此這篇關(guān)于C語言結(jié)構(gòu)體指針的示例代碼的文章就介紹到這了,更多相關(guān)C語言結(jié)構(gòu)體指針內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • C++實現(xiàn)多項式相乘

    C++實現(xiàn)多項式相乘

    這篇文章主要介紹了C++實現(xiàn)多項式相乘方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • C語言與C++中const的用法對比

    C語言與C++中const的用法對比

    C語言中的const與C++有很大的不同,在C語言中用const修飾的變量仍是一個變量,表示這個變量是只讀的,不可顯示地更改,而在C++中用const修飾過后,就變成常量了
    2022-04-04
  • C++語言設(shè)計實現(xiàn)五子棋

    C++語言設(shè)計實現(xiàn)五子棋

    這篇文章主要為大家詳細介紹了C++語言設(shè)計實現(xiàn)五子棋,包括數(shù)據(jù)結(jié)構(gòu)和對象設(shè)計及主函數(shù)調(diào)用實現(xiàn),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Objective-C 消息傳遞機制詳解

    Objective-C 消息傳遞機制詳解

    Objective-C語言中方法的傳遞有二種:①Selector ② Blocks,本文主要說一下Selector,本文以O(shè)bjective-C 消息傳遞機制進行詳細介紹,關(guān)于Blocks會在后續(xù)總結(jié)一下
    2012-11-11
  • 深入理解c語言數(shù)組

    深入理解c語言數(shù)組

    這篇文章主要介紹了c語言數(shù)組,有需要的朋友可以參考一下
    2013-12-12
  • C++中this指針用法詳解及實例

    C++中this指針用法詳解及實例

    這篇文章主要介紹了C++中this指針用法詳解及實例的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • C語言實現(xiàn)進制轉(zhuǎn)換函數(shù)的實例詳解

    C語言實現(xiàn)進制轉(zhuǎn)換函數(shù)的實例詳解

    這篇文章主要介紹了C語言實現(xiàn)進制轉(zhuǎn)換函數(shù)的實例詳解的相關(guān)資料,這里提供實現(xiàn)實例幫助大家實現(xiàn)改功能,需要的朋友可以參考下
    2017-08-08
  • 淺析C++中單鏈表的增、刪、改、減

    淺析C++中單鏈表的增、刪、改、減

    以下是對C++中單鏈表的增、刪、改、減進行了詳細的介紹,需要的朋友可以過來參考下
    2013-09-09
  • .h和.cpp文件的區(qū)別(zt)詳細介紹

    .h和.cpp文件的區(qū)別(zt)詳細介紹

    特別是對源文件和頭文件的概念,需要深入對它了解,本文將詳細介紹,需要了解的朋友可以參考下
    2012-11-11
  • 一文快速掌握C++雙端數(shù)組容器deque的使用

    一文快速掌握C++雙端數(shù)組容器deque的使用

    本文和大家分享的是和vector容器功能很像的容器——deque,了解deque容器的本質(zhì),使用方法以及與vector容器的不同之處,感興趣的快跟隨小編一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07

最新評論