今、アロー演算子を使ってテストプログラムを書こうと思っているのですが、
どうしてもエラーが出てしまいます。
構造体にint型の二つのメンバを用意し、関数にポインタを渡すことによって両者の値を入れ替えようと思っています。
#include <stdio.h>
void swap_struct(struct Data *);
int main(void)
{
struct Data{
int a,b;
};
struct Data MyData;
MyData.a = 5;
MyData.b = 10;
printf("before a=%d b=%d",MyData.a,MyData.b);
swap_struct(&MyData);
printf("after a=%d b=%d",MyData.a,MyData.b);
return 0;
}
void swap_struct(struct Data *lpData)
{
int c;
c = lpData->a;
lpData->a = lpData->b;
lpData->b = c;
return;
}
エラーは、自作関数内でa,bが未定義であるといったものです。本を読み直してやってみたのですが、やはりエラーが出てしまいます。