小编Are*_*yan的帖子

tcsetattr(): TCSANOW, TCSADRAIN, TCSAFLUSH 和 TCSASOFT 有什么区别

我已经阅读了GNU 手册tcsetattr(),它指出该函数具有三个参数:一个文件描述符、一个解释如何处理排队 I/O 的值和一个指向struct termios. 但是,我不明白不同值 ( TCSANOW, TCSADRAIN, TCSAFLUSH, TCSASOFT)之间的区别是什么。

有人可以解释一下吗?

c io terminal input output

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

枚举和将月份名称作为字符串返回的函数

这是练习:

编写一个名为的函数monthName() ,它将一个类型的值作为其参数enum month(如本章所定义),并返回一个指向包含月份名称的字符串的指针.通过这种方式,您可以enum month使用以下语句显示变量的值 :

printf("%s\n", monthName(aMonth));

我写了我的版本并获得了我期望的输出.但是,我确信必须有一个更好的方法来实现它,而不必每个月使用一个case的switch语句.如何用更好的设计编写这个功能?

#include <stdio.h>

enum month { January = 1, February, March, April, May, June, 
        July, August, September, October, November, December };

char *monthName(enum month m){
    switch (m) {
        case January:
            return "January";
            break;
        case February:
            return "February";
            break;
        case March:
            return "March";
            break;
        case April:
            return "April";
            break;
        case May:
            return "May";
            break;
        case June:
            return "June";
            break;
        case July:
            return "July";
            break;
        case August:
            return "August"; …
Run Code Online (Sandbox Code Playgroud)

c enums switch-statement

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

标签 统计

c ×2

enums ×1

input ×1

io ×1

output ×1

switch-statement ×1

terminal ×1