c - c - 如何访问单独头文件中定义的值
问题描述
所以我有一个名为simulator.h 的单独文件,其中定义了值,例如:
#define PEPPERONI 1
#define CHEESE 2
#define VEGETARIAN 3
我有一个单独的 csv 文件,其中包含一列披萨配料选择。在我的名为converting.c 的程序中,我正在尝试编写一个程序,该程序从csv 文件中读取数据并将数据写入一个名为toppings.bin 的新文件中并进行更改。我遇到的问题是弄清楚如何访问 .h 文件中每个顶部定义的数值。它应该基本上打印一个字节,其值取决于 .h 文件中定义的顶部类型。因此,如果 csv 文件显示“PEPPERONI”,则 bin 文件应打印“1”。
另外,我对如何在 c 中声明一个字节变量感到有些困惑,并希望得到一些解释。
例如,我有:
char *one = getfield(buf, 1);
char *two = getfield(buf, 2);
if(one && two && strcmp(first, "Pizzas") == 0){
fprintf(ft, "%x \n", two);
}
解决方案
您需要 strcmp 顶部的字符串。如果它与您匹配 fprintf(...,"%c",value)。请记住,字符和字节在 C 中通常是同义词,尽管英语可能会说什么是“字符”,什么不是“字符”。
IE
if (strcmp(one,"Pepperoni") == 0)
fprintf(ft,"%c", PEPPERONI);
推荐阅读
- php - 更改字符串php中括号内的所有文本颜色
- delphi - 在 Delphi / C++ Builder 中使用 WebView (EdgeHTML)
- c# - 如何在 void 中返回变量
- javascript - 如何使用 Jest 将 prop 中的 spyOn 方法传递给组件?
- nginx - Tengine Web 服务器默认安装支持哪些脚本语言?
- docker - 通过 docker 下载并运行带有 gnome 支持的 ubuntu-desktop
- javascript - 同一个 javascript 文件中的两个 googlemaps 框具有不同的位置
- reactjs - 反应:更新道具变化的状态
- xml - Savon:无法解析响应正文 GZIP 内容编码
- javascript - jquery:如何切换 1 个输入字段的密码?