如何根据字符串的值访问`struct'的成员?

Day*_*ite 4 c string struct

我想通过使用字符串的值来访问结构中的成员:

struct hello_world
{
           char rate;
           char ssid;
};
Run Code Online (Sandbox Code Playgroud)

有一个varibale让我们说

char *string="ssid";
Run Code Online (Sandbox Code Playgroud)

我想使用此字符串的值来引用结构中的ssid成员hello_world.这可能吗?

Kir*_*rov 5

不,不是.

你需要一个(长)if-else语句,这样做.喜欢:

struct hello_world hw;
char *string="ssid";

if( 0 == strcmp( "ssid", string ) )
{
     // use hw.ssid
}
else if ...
Run Code Online (Sandbox Code Playgroud)

  • 此功能称为反射,C没有. (4认同)