結構體的定義、輸出 和結構體指標的使用。
阿新 • • 發佈:2019-02-03
#include <stdio.h>
#include <string.h> struct Student
{
int age;
char name[20];
int id;
}; // 這裡的 " ; " 不可遺漏 int main()
{
struct Student s1;
s1.age = 20;
s1.id = 0;
strcpy(s1.name, "zhang"); // 這裡必須用字元換處理函式strcpy來將"zhang"賦予s1.name
printf("%d %s %d\n", s1.age, s1.name, s1.id);
struct Student s2 = {21, "li", 1}; // 注意定義的順序要和結構體順序相同
printf("%d %s %d\n", s2.age, s2.name, s2.id);
struct Student *ps1 = &s1; // 定義結構體指標
printf("%d %s %d\n", (*ps1).age, (*ps1).name, (*ps1).id);
printf("%d %s %d\n", ps1->age, ps1->name, ps1->id); // 該行與上一行效果相同即 ps1->age和(*ps1).age效果相同 return 0;
}
#include <string.h> struct Student
{
int age;
char name[20];
int id;
}; // 這裡的 " ; " 不可遺漏 int main()
{
struct Student s1;
s1.age = 20;
s1.id = 0;
strcpy(s1.name, "zhang"); // 這裡必須用字元換處理函式strcpy來將"zhang"賦予s1.name
printf("%d %s %d\n", s1.age, s1.name, s1.id);
struct Student s2 = {21, "li", 1}; // 注意定義的順序要和結構體順序相同
printf("%d %s %d\n", s2.age, s2.name, s2.id);
printf("%d %s %d\n", (*ps1).age, (*ps1).name, (*ps1).id);
printf("%d %s %d\n", ps1->age, ps1->name, ps1->id); // 該行與上一行效果相同即 ps1->age和(*ps1).age效果相同 return 0;
}