C语言一些容易忘得知识点汇总

C语言一些容易忘得知识点汇总

  1. ### Designated Initializers (指定初始化)
    C99 引入的新特性。可以直接初始化指定数组下标或者结构体某个成员。
struct S1 {
  int i;
  float f;
  int a[2];
};

struct S1 x = {
  .f=3.1,
  .i=2,
  .a[1]=9
};

int a[6] = { [4] = 29, [2] = 15 };
rohc-lib.org 里 rohc_traces.h 里 应用如下:
typedef enum
{
    ROHC_TRACE_DEBUG = 0,   /**< Print debug traces */
    ROHC_TRACE_INFO = 1,    /**< Print info (or lower) traces */
    ROHC_TRACE_WARNING = 2, /**< Print warning (or lower) traces */
    ROHC_TRACE_ERROR = 3,   /**< Print error (or lower) traces */
    ROHC_TRACE_LEVEL_MAX    /**< The maximum number of trace levels */
} rohc_trace_level_t;

const char *level_descrs[] =
{
    [ROHC_TRACE_DEBUG]   = "DEBUG",
    [ROHC_TRACE_INFO]    = "INFO",
    [ROHC_TRACE_WARNING] = "WARNING",
    [ROHC_TRACE_ERROR]   = "ERROR"
};
这样就方便改删调试信息了。
  1. C99 已经可以在函数内随时随地需要用的时候再定义变量了,就像C++一样。

    更多内容参考这里: The New C: Declarations & Initializations

  2. C99

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值