定义咯一个枚举变量枚举变量怎么打印出来 linux c,以C语言的字符串形式输出枚举变量...
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
#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(aCVMX_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;第二) -數據類型,輸出,輸入功能和操作存儲器地址,C語言的存儲器修改器
Android對于JNI(2)-C中的數據類型,輸出c web后臺輸出字符串,輸入函數和內存地址,內存修飾符. 當我們編寫完Hello World時,我們可以進入C的門. 今天讓我們談談一些基本數據類型...
C2015-05-17 15和冒號中返回字符串函數的四種實現方法; 00 23人閱讀評論( 0)收藏夾
歸類為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 ),因為C字符串是Ending ...
Java字符串整數轉換練習: 以編程方式查找字符串和OpenCurlyDoubleQuote; 100“ and“ 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 #include #include #include 51nod貪婪算法簡介---任務分配問題
在任務執行序列中有N個任務要執行. 第i個任務占用R [i]空間進行計算,然后釋放其中的一部分. 最后,存儲計算結果需要占用O [i]空間(O [i] OWIN編寫中間件
OWIN自己動手編寫的中間件系列1.前言1.基于OWIN的項目在System.Web(輕量級+跨平臺)的約束下脫穎而出,因此ASP.NET應用程序僅需依賴于此抽象界面,不在乎Web服務器正在運行...
[ &期間; NET]逐步構建一個簡單的MVC電子商務網站BooksStore(3)
逐步創建一個簡單的MVC電子商務網站-BooksStore(3)本系列的GitHub地址: &l ...
Ubuntu計劃的任務在
安裝方法: apt-get install at使用方法: 在11:13 Add警告: 命令將使用/ bin / sh at>&...
執行
[ bzoj 4034] [ HAOI 2015]樹操作
描述有一棵具有N個點的樹,以點1為根,并且這些樹點具有邊權重. 然后有M個操作,分為三種類型: 操作1: 將節點x的點權重增加a. 操作2: 將節點x放在子樹中作為根...
NativeWindow_ 01_ CreateWindow和lpar; Ex) _ VC6
1. #include 低級回調ProcWindow(HWND hwnd,UINT uMsg,WPARAM wParam,LPARA ...
本文來自電腦雜談,轉載請注明本文網址:
http://www.pc-fly.com/a/jisuanjixue/article-153281-1.html
總結
以上是生活随笔為你收集整理的定义咯一个枚举变量枚举变量怎么打印出来 linux c,以C语言的字符串形式输出枚举变量...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux系统vi编辑器执行命令,lin
- 下一篇: 微软遭遇XP SP3疯狂重启尴尬境地