同じ名前の foo を持つ 2 つの異なる構造体を宣言しました。そのうちの 1 つはグローバルに宣言されており、プログラム内の任意の関数から簡単にアクセスできます。しかし、この 2 番目の構造体が main にあり、ローカルで宣言されています。
メインで両方にアクセスする必要がありますか? 構造体変数を異なる名前で宣言することでそれを行いました。しかし、問題は構造体のサイズを確認する必要があることです...グローバル構造体ではなくローカル構造体のサイズを取得するにはどうすればよいですか?
#include <stdio.h>
#include <stdlib.h>
struct foo {
char arr1[200];
int x_val;
int y_val;
float result;
};
struct foo globe_foo;
int main()
{
struct foo {
char c;
char arr[20];
int x;
};
struct foo my_foo;
globe_foo.x_val = 20;
printf("Globe foo x_val: %d\n",globe_foo.x_val);
printf("Size of struct foo is: %d\n",sizeof(struct foo));
//how to check size of global decleared stuct foo?
printf("Size of struct foo is: %d\n",sizeof(struct foo));
system("pause");
return 0;
}