当前位置: 首页 > news >正文

网站域名实名认证吗宁德seo优化

网站域名实名认证吗,宁德seo优化,vs用web网站做登陆 注册,免费网页代理在线一、背景 在项目中需要根据从数据库中获取的字段与对应的键值付给对应结构体成员上,而c语言中没有类似的反射机制,所以需要实现类似功能。例,从表中查到a 10,在结构体t中,需要将 t.a 10。 二、实现 感谢ChatGPT&…

一、背景

    在项目中需要根据从数据库中获取的字段与对应的键值付给对应结构体成员上,而c语言中没有类似的反射机制,所以需要实现类似功能。例,从表中查到a = 10,在结构体t中,需要将 t.a = 10。

二、实现

    感谢ChatGPT,借助其提示,采用宏形式,共用一份宏描述实现结构体数据类型定义与根据字符串值获得/设置结构体成员值。

#include <stdio.h>
#include <string.h>
#include <stdlib.h>// 定义结构体成员列表
#define STRUCT_MEMBERS \MEMBER(int, id)    \MEMBER(float, score) /*分数*/\MEMBER(char , name[10])/*姓名*/// 定义结构体
typedef struct {#define MEMBER(type, name) type name;STRUCT_MEMBERS#undef MEMBER
} MyStruct;// 枚举结构体成员名称
void list_members(){#define MEMBER(type, name) printf("%s\n", #name);STRUCT_MEMBERS#undef MEMBER
}// 获得结构体成员指针
void* get_member(const char * key, MyStruct * s)
{char tmp_str[128];#define MEMBER(type, name) {\if(strncmp(key, #name, strlen(key)) == 0)\{\if(strlen(key) == strlen(#name))\return &s->name;\else\{\int index = 0;\return sscanf(#name, "%[^[][%d]", tmp_str,&index) == 2 ? &s->name - index : NULL;\}\}};STRUCT_MEMBERS#undef MEMBERreturn NULL;
}int main() {// 列出结构体的所有成员printf("MyStruct members:\n");list_members();MyStruct s = {.id = 1,.score =  95.5};strcpy(s.name, "zhangsan");// 根据字符串获得成员指针printf("s.name = %s\n", (char *)get_member("name", &s));return 0;
}

三、结果

在这里插入图片描述

四、注意

sscanf(#name, "%[^[][%d]", tmp_str,&index) == 2 ? &s->name - index : NULL;

之所以采用&s->name - index的形式是为了兼容定义成员为数组时,在上面的例子中,成员name的#name 是 "name[10]“而不是"name”,因此,&s->name就是&s->name[10],需要减掉偏移使其为基地址,sscanf是在解析这个10把它放在index中,%[^[][%d]是一个正则表达式,来解析数组定义格式的变量,这里再次感谢AI,(/•ิ_•ิ)/ A门!

http://www.shuangfujiaoyu.com/news/2215.html

相关文章:

  • java直播网站怎么做百度浏览器下载
  • 网站建设及安全制度网站建设平台
  • 做网站电话销售说辞seo排名优化资源
  • 南宁网站制作百度霸屏推广一般多少钱
  • 遵义网邯郸seo
  • 宝鸡响应式网站开发如何提高seo关键词排名
  • 五月天乐队做网站高端网站定制
  • flash网站开发用什么语言百度一下网页
  • 还有网站吗广州seo网站
  • 西安旅游网站建设品牌推广方案策划书
  • 个人备案网站可以做淘宝客广州网络营销
  • 有没有做网页的网站永久不收费的软件app
  • 诸城做网站的公司小红书seo是什么意思
  • web前端工程师岗位需求宁波做seo推广企业
  • 做php网站时如何建立数据库百度没有排名的点击软件
  • 湛江做网站的公司静态网站开发
  • 备案怎么关闭网站吗网站建设网络营销
  • 高端汽车网站建设公众号开发
  • 网站建设研究的意义天津seo
  • 临沭有做网站的吗重庆seo整站优化方案范文
  • 医院网站建设方案策划书谷歌搜索引擎为什么国内用不了
  • 网站建设ftp上传是空目录竞价推广返点开户
  • 丰田车营销网站建设的纲要计划书全网整合营销公司
  • 建设网站企业山西seo排名厂家
  • 树莓派做博客网站北京seo设计公司
  • 网站建设女装规划书快排seo软件
  • 广告设计与制作毕业论文3000字seo搜索是什么意思
  • 帮老板做网站搜索引擎营销的优缺点
  • 响应式网站建设特征最新长尾关键词挖掘
  • 如果启动浏览器就能直接打开一个常用的网站主页_要怎么做?化妆培训