簡體   English   中英

使用typedef結構值

[英]Alotting values using typedef struct

使用成員定義運算符與類型定義一起編寫代碼時遇到一些問題。 我想分配該值,請參見下文,我的結構定義了變量。 但是每次我嘗試一下時,我都會走得更遠並且迷惑自己。 我究竟做錯了什么? 為什么該程序不打印不同的值?

#include <stdio.h>

void outputDate(courseInfo course);

typedef struct{
    int year;
    int month;
    int day;
}date;

typedef struct{
    double avrage;
    int students;
    date start;
    date end;

}courseInfo;

int main(void){

    courseInfo course;
    course.avrage = 10;
    course.students=200
    course.start={17,17,17};
    course.end={16,16,16};


    outputDate();

    return 0;
}

void outputDate(courseInfo course){
    printf("avrage%d\n", course.avrage);
    printf("students%d\n", course.students);
    printf("start%d\n", course.start);
    printf("end%d\n", course.end);
    return;
}

start是一個結構,而不是int ,因此將%d用作格式代碼將不起作用。
使用類似
printf("start %d %d %d\\n", course.start.day, course.start.month, course.start.year);

除printf問題外,還應將路線變量傳遞給main中的outputDate()函數。

outputDate(course);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM