小弟新手問了白痴問題見諒,剛剛做了結構的練習題,實在不明白為什麼其他結構內宣告
的變數就不用宣告指標,name這變數沒加指標的話會當掉...求解謝大大!
#include<stdio.h>
#include<stdlib.h>
void pass(struct no1 *);
void ans(struct no1 *);
struct no1
{
char *name; //這裡為什麼要宣告成指標的變數?
int num;
int pass;
};
void main()
{
struct no1 s = { "Louis", 80 };
pass(&s);
ans(&s);
system("PAUSE");
return 0;
}
void pass(struct no1 *s)
{
if (s->num >= 60)
{
s->pass = 1;
}
else
{
s->pass = 0;
}
}
void ans(struct no1 *s)
{
printf("學生姓名:%s\n考試分數:%d\n檢驗結果:%s\n\n",s->name,s->num, (s->pass
== 1) ? "通過":"失格");
}