c的printf怎么输出枚举类型变量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c的printf怎么输出枚举类型变量相关的知识,希望对你有一定的参考价值。

??

enum设计出来是为了编写代码方便而使用的,底层并不保存枚举量名称,如果你真需要打印出enum的变量名称出来,可以使用下面的方式:

typedef enum

A = 0,
B,
C
ENUM_SAM_T;

char* p[3]="A","B","C";

然后可以在程序中做如下打印枚举量E的值:
ENUM_SAM_T E = A;
printf("%s",p[E]);
参考技术A 希望有帮助
#include <iostream>
using namespace std;

void main(void)

enum egg a,b,c;
enum egg test; //在这里你可以简写成egg test;

test = c; //对枚举变量test进行赋予元素操作,这里之所以叫赋元素操作不叫赋值操作就是为了让大家明白枚举变量是不能直接赋予算数值的,例如(test=1;)这样的操作都是不被编译器所接受的,正确的方式是先进行强制类型转换例如(test = (enum egg) 0;)!

if (test==c)

cout <<"枚举变量判断:test枚举对应的枚举元素是c" << endl;


if (test==2)

cout <<"枚举变量判断:test枚举元素的值是2" << endl;


cout << a << "|" << b << "|" << test <<endl;

test = (enum egg) 0; //强制类型转换
cout << "枚举变量test值改变为:" << test <<endl;
cin.get();

C语言中输出long long型数据怎么输出

使用格式字符%lld输出long long类型。 

一、在C语言中输出语句为printf。其调用方式为:

printf(FORMAT_STR, vars...);

其中FORMAT_STR中指定格式字符,输出时,根据格式字符输出对于类型的变量。 

二、每种变量类型,对应一组格式字符。如int对应为%d。 而long long 对应的类型就是%lld。

三、参考代码:

#include <stdio.h>
int main()

    long long a=1234567;
    printf("%lld\\n", a);//以%lld输出long long 类型。
    return 0;

四、注意事项:

1 long long类型从C99开始支持,所以如果编译器不支持C99规范,则无法使用long long。

2 对于VC/VS编译器,不支持long long类型,而是使用_int64。输出则为相同的%lld。

参考技术A long long型用格式符%lld

以上是关于c的printf怎么输出枚举类型变量的主要内容,如果未能解决你的问题,请参考以下文章

c语言枚举用法

c语言中的布尔类型、枚举类型是个啥概念?

c语言中的布尔类型、枚举类型是个啥概念?

C语言枚举类型

C语言枚举类型怎么使字符和相应的序号对应

c语言 联合和枚举