首页
查找话题
首页
C语言题目,字符型输入如何使用switch?
C语言题目,字符型输入如何使用switch? 第1页
1
zhang-hao-72 网友的相关建议:
不超过4字节的话可以强行转成整形再case,也是个通用做法。比较长的字符串只要前4字节不重复,只取前4字节就行。
先hash, 不过还得手工把每个hash值算出来,再写成宏,不太优雅,要么就在编译阶段用脚本解决,也麻烦。还得注意是否有重复,重复了就换个hash算法。
c++的话,可以把hash函数的返回值用constexpr类型,就可以直接放在case后面了,清爽多了,也不用人肉检查重复了,重复的话编译时会提示。
如果还需要忽略大小写之类……还是老实用if..else配合strcasecmp吧。
C语言题目,字符型输入如何使用switch? 的其他答案 点击这里
1
相关话题
一直不太明白闰年是怎么算?
第2个孩子不是应该在第4个孩子之前完成任务吗?
C语言能判断一个变量是int还是float吗?
c语言0xFFFF换成十进制不应该是65535吗?
怎样理解C语言是才是代码的精髓,可以让你领略不一样的世界这句话?(其实就是怎么翻译成人话-_-#
该如何正确看待c中的字符串常量?
C语言开发单片机为什么大多数都采用全局变量的形式?
为什么char *a="xxxxx", *b="xxx"; strcpy(a, b);的用法不行?
为什么char *a="xxxxx", *b="xxx"; strcpy(a, b);的用法不行?
一直不太明白闰年是怎么算?
前一个讨论
澳大利亚买核潜艇是核扩散吗?
下一个讨论
最近网上疯传的,类似蜘蛛的生物,究竟是什么东西呢?
相关的话题
C语言怎么比较两个函数的大小?
C 语言的「void main」是怎么一代代传下来的?
将一个double型(int型)格式化输出为int型(double型)时发生了什么?
字符串转化成整数,为啥我觉得我写的没有毛病呢?
c语言0xFFFF换成十进制不应该是65535吗?
在c语言当中,for循环,for(i=0;i<10;++i)与for(i=0;i++<10;)啥区别?
为什么char *a="xxxxx", *b="xxx"; strcpy(a, b);的用法不行?
英语不好能学C语言和C++么?
为什么C语言中计算机认为0是假的,其他数都是真的?
C语言里a>b?a<c?a:b:c;这个怎么该判断?
C语言题目,字符型输入如何使用switch?
第2个孩子不是应该在第4个孩子之前完成任务吗?
为什么现在大厂很少招C语言开发了?
int *p=new int,当free(p)时free函数是怎么知道要释放4个字节而不是5个的?
在c语言当中,for循环,for(i=0;i<10;++i)与for(i=0;i++<10;)啥区别?
如何用C语言写一个简易计算器?
如何看待枚举类型与基本类型的关系?
C语言编写时,将参数传递跨越多个函数的方式是否是妥当的?
为什么我写的c语言三个数求最大值,最后出来的结果总是第一个?
c语言中的sizeof()是如何分辨数组名和指针的?
为什么C语言中计算机认为0是假的,其他数都是真的?
C/C++中的数组为什么必须定义之后在一行内立刻赋值,而不能定义数组之后换一行再赋值?
怎样理解C语言是才是代码的精髓,可以让你领略不一样的世界这句话?(其实就是怎么翻译成人话-_-#
C 语言 printf("%f ",3/2) 为什么结果是 0 ?
这个如此诡异的C语言「怪事」是怎么回事?
C 语言 printf("%f ",3/2) 为什么结果是 0 ?
为什么C语言中主函数main后面有个()?
c语言如何定义没有返回值的main函数?
C 语言枚举 end 是做什么用的?
C 语言自带函数返回值为指针类型的数组为什么不需要释放内存?
服务条款
联系我们
关于我们
隐私政策
© 2025-03-28 - tinynew.org. All Rights Reserved.
© 2025-03-28 - tinynew.org. 保留所有权利