小编Omk*_*xit的帖子

如何减少或替换C语言中的else if语句?

我使用的代码如下所示

  if (strcmp(oid, ".1.3.6.1.4.1.53864.1.1.0") == 0) 
  {
      return 1;
  } 
  else if (strcmp(oid, ".1.3.6.1.4.1.53864.1.2.0") == 0) 
  {
      return 2;
  }
  ...
  else if (strcmp(oid, ".1.3.6.1.4.1.53864.1.n.0") == 0) 
  {
      return n;
  }
Run Code Online (Sandbox Code Playgroud)

现在的问题是更新n值是250。任何人都可以给我任何想法来减少这个else if声明吗?

我尝试在 StackOverflow 上搜索,但这些答案与其他语言相关,我想要一个可以用 C 语言实现的想法。

c embedded design-patterns embedded-linux

2
推荐指数
1
解决办法
197
查看次数

如何在c中将64位十六进制值转换为双精度值?

我正在使用 GPS 模块,通过它我可以获取字符串

"0x3f947ae147ae147b"
Run Code Online (Sandbox Code Playgroud)

我需要将其转换为double. 期望值为0.02

我参考了以下网站

https://gregstoll.com/~gregstoll/floattohex/

我如何转换C中的值?

c embedded embedded-linux

1
推荐指数
1
解决办法
999
查看次数

标签 统计

c ×2

embedded ×2

embedded-linux ×2

design-patterns ×1