2014年11月13日15: 17: 20 haifeilang阅读次数: 6295
每个枚举常量都对应一个整数. 很多时候它可以像整数一样使用. 每个人都知道这一点;但是,如果要打印枚举变量名称的字符串,则有很多方法. 查看方法几乎需要转换. 要么使用数组,以下是可以视为直接打印的新方法;
#将以字符串形式返回以下内容
如果要将#之后的内容用作宏,则需要使用两层宏扩展,并且该宏使用的宏中的每个字符都将用作返回字符串的一部分. 如
printf("10->%s\r\n", MY_DEFINE2(MY_STRING2));
也就是说:
#define MY_DEFINE(R) #R #define MY_DEFINE2(R) MY_DEFINE(R)
#include <stdio.h>
#define MY_INT 7777
#define MY_STRING "9999"
#define MY_STRING2 "9999\"8OK"000(888)
#define ENUM_CHIP_TYPE_CASE(x) case x: return(#x);
#define MY_DEFINE(R) #R
#define MY_DEFINE2(R) MY_DEFINE(R)
enum cvmx_chip_types_enum {
CVMX_CHIP_TYPE_NULL = ,
CVMX_CHIP_TYPE_DEPRECATED = ,
CVMX_CHIP_TYPE_OCTEON_SAMPLE = ,
CVMX_CHIP_TYPE_MAX
};
static inline const char *cvmx_chip_type_to_string(enum cvmx_chip_types_enum type)
{
switch (type)
{
ENUM_CHIP_TYPE_CASE(CVMX_CHIP_TYPE_NULL)
ENUM_CHIP_TYPE_CASE(CVMX_CHIP_TYPE_DEPRECATED)
ENUM_CHIP_TYPE_CASE(CVMX_CHIP_TYPE_OCTEON_SAMPLE)
ENUM_CHIP_TYPE_CASE(CVMX_CHIP_TYPE_MAX)
}
return "Unsupported Chip";
}
int main()
{
enum cvmx_chip_types_enum a;
;
printf("1->%s\r\n", MY_DEFINE(CVMX_CHIP_TYPE_DEPRECATED));
printf("2->%s\r\n", MY_DEFINE(my_int_test));
printf());
printf("4->%s\r\n", MY_DEFINE(MY_INT));
printf("5->%s\r\n", MY_DEFINE2(MY_INT));
printf("6->%s\r\n", "MY_INT");
printf("7->%s\r\n", MY_DEFINE(MY_STRING));
printf("8->%s\r\n", MY_DEFINE2(MY_STRING));
printf("9->%s\r\n", MY_DEFINE(MY_STRING2));
printf("10->%s\r\n", MY_DEFINE2(MY_STRING2));
)
{
printf("input(0~3):");
scanf("%d",&a);
if(a<CVMX_CHIP_TYPE_NULL||a>CVMX_CHIP_TYPE_MAX)
{
printf("error,you must input number between 0 and 3,please try again!\n\n");
continue;
}
printf("\n");
printf("the result:%s \n\n",cvmx_chip_type_to_string(a));
}
;
}
结果测试:

如何不打印所有名称c web后台输出字符串,只想打印最后几个字符,例如“ CVMX_CHIP_TYPE_DEPRECATED”,
我只想打印以下“ DEPRECATED”字符串. 上面的代码只需要修改宏:

#define ENUM_CHIP_TYPE_CASE(x)case x: 返回(#x);如下所示进行更改
#define ENUM_CHIP_TYPE_CASE(x)case x: 返回(#x + 15); //从第16个字符串开始打印,不要打印前15个字符串
结果如下:

非常有用的技能!

使用C语言设置字符串格式
用C语言表示的格式字符串的一般形式为: [%[flag] [输出最小宽度] [. 精度] [长度]类型,其中方括号[]中的项目是可选的. 一,我们使用某些用于表示输出数据类型的字符,格式字符和含义如下表所示: 字符...
Android for JNI和lpar;第二&rpar; -数据类型,输出,输入功能和操作存储器地址,C语言的存储器修改器
Android对于JNI(2)-C中的数据类型,输出c web后台输出字符串,输入函数和内存地址,内存修饰符. 当我们编写完Hello World时,我们可以进入C的门. 今天让我们谈谈一些基本数据类型...
C2015-05-17 15和冒号中返回字符串函数的四种实现方法; 00 23人阅读评论&lpar; 0&rpar;收藏夹

归类为C语言的返回字符串函数的四种实现方法: UNIX / LINUX C / C ++ 2010-12-29 02:54 11954人阅读注释(1)存储报告语言func有四种方法: 1.使用堆为空...
用C语言返回字符串函数的四种实现方法
C中的字符串返回函数的四种实现方法实际上是返回有效指针,并且退出后tail变量无效. 有四种方法: 1.使用堆空间并返回请求的堆地址. 请注意版本2. 向函数参数传递一个指针,并返回该指针3.返回函数...
查找C语言中字符串的长度
要在C中查找字符串的长度,可以使用sizeof()函数和strlen()函数. 后者需要引入string.h(#include
Java字符串整数转换练习: 以编程方式查找字符串和OpenCurlyDoubleQuote; 100“ and&OpenCurlyDoubleQuote; 150”,然后将差值作为字符串输出为十进制值.
package com.swift;公共类String_To_Integer_Test {公共静态void main(String [] args){/ * ...
C中的字符串
字符串是用双引号引起来的多个字符. 在C中,字符串以'\ 0'结尾. 也就是说,每个字符串的最后一个字符为'\ 0',但不显示终止符,它只是在此处标记字符串的结尾. 二. 声明字符串char * s ...
R中的字符串处理功能
内容概述尽管R是一种以数字向量和矩阵为核心的统计语言,但是字符串有时仍占数据分析的很大一部分. R语言是一种擅长处理数据的语言,但是处理某些字符串(文本数据)也是不可避免的. 多高...
[R note] R语言中的字符串处理功能
内容概述尽管R是一种以数字向量和矩阵为核心的统计语言,但是字符串也非常重要. 从医学研究数据的出生日期到文本挖掘的应用,R程序中使用字符串数据的频率非常高. R语言提供了很多字符串操作功能,本文很简单...
Spring通用jar包摘要(转载)
spring.jar是一个包含完整发行版的jar包. Spring.jar包含jar包的所有内容,但spring-mock.jar中包含的内容除外,因为它仅用于开发环境spring- m ...
HDU-4035迷宫(概率DP寻求期望)
问题摘要: 在一个以房间为节点的树形迷宫中. 有n个房间,每个房间中的陷阱概率为ki,退出概率为ei. 如果这些条件都不存在(对于pi),则您只能选择移至下一个房间(包括可能移至上一个房间...
超级用法
人员类: 公共类Person {String _name; int _age; public Person(字符串名称,整数年龄){_ name = n ...
HDU1353及以上;贪婪
注意精度. / * * / #include 51nod贪婪算法简介---任务分配问题 在任务执行序列中有N个任务要执行. 第i个任务占用R [i]空间进行计算,然后释放其中的一部分. 最后,存储计算结果需要占用O [i]空间(O [i] OWIN编写中间件 OWIN自己动手编写的中间件系列1.前言1.基于OWIN的项目在System.Web(轻量级+跨平台)的约束下脱颖而出,因此ASP.NET应用程序仅需依赖于此抽象界面,不在乎Web服务器正在运行... &lbrack; &期间; NET&rsqb;逐步构建一个简单的MVC电子商务网站BooksStore(3) 逐步创建一个简单的MVC电子商务网站-BooksStore(3)本系列的GitHub地址: &l ... Ubuntu计划的任务在 安装方法: apt-get install at使用方法: 在11:13 Add警告: 命令将使用/ bin / sh at>&... 执行 &lbrack; bzoj 4034&rsqb; &lbrack; HAOI 2015&rsqb;树操作 描述有一棵具有N个点的树,以点1为根,并且这些树点具有边权重. 然后有M个操作,分为三种类型: 操作1: 将节点x的点权重增加a. 操作2: 将节点x放在子树中作为根... NativeWindow&lowbar; 01&lowbar; CreateWindow和lpar; Ex&rpar; &lowbar; VC6 1. #include 
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-153281-1.html
我在想桃子从韩国回来的时候会不会就是这样坐在飞机上哭的
可是浙商历史上
甲午海战前基本上就已经决定了北洋水师的失败