问题: 在下初学C语言, 想了解下C语言可否像js访问对象属性一样拼接字符串访问结构体的内容
如下:
// JavaScript code
let obj = {
a1: 123,
a2: 456
}
for (let i=1; i<=2; i++) {
console.log(obj['a' + i]);
}
// 输出如下:
// 123
// 456
C语言可否像上面访问 obj 对象的 a1 属性一样通过 'a' + i 的形式访问结构体, 或者说实现类似的功能
目前我了解到结构体在C语言中使用 . 语法访问内容, 再往下查的话一直没有找到有关文档, 还望了解的小伙伴解惑, 在下有礼了
C 语言不清楚,C++ 里要想这么(动态属性取值/赋值)做得靠反射,语法层面上是不支持的;想来 C 语言也应该是没这个能力的;而反射的话建议初学者先别去了解,容易懵,最后熊瞎子掰苞米啥啥都学不会。
P.S. 你说的那个 “.”,它叫“点操作符”(Dot Operator),想了解用法你搜这个关键字就好了。