图源:Anmi - 水族館 83088427
虽然没有固定标准,但一般将C99之后的C语言标准称为“现代C语言”;目前的最新标准为C23;
C23标准中值得注意的变化
以下是一部分我认为比较重要的变化,完整变化列表可以参阅 https://en.cppreference.com/w/c/23 或ISO标准文档。
替代
<assert.h>中的static_assert()宏被替代,变成了static_assert关键字;<threads.h>中的thread_local()宏被替代,变成了thread_local关键字;<time.h>中的ctime()函数弃用,请使用ctime_s()替代;<time.h>中的asctime()函数弃用,请使用asctime_s()替代;<stdnoreturn.h>与_Noreturn标识符均弃用;<stdalign.h>中的alignas()和alignof()宏被弃用,请直接使用_Alignas和_Alignof关键字;

