c语言file_C语言编程第20讲——几个有用的编译时才确定值的符号

0567fd772efc601cacded6b8909b37b3.png

在C语言编程中,有五个符号,它们的值在编译时,才由编译器替换成常量值,对程序员非常有用。

1、__STDC__

如果编译器支持标准C语言,则将__STDC__变为1,否则变为0。

例如下面的代码:

#include int main(){    if (__STDC__)    {        printf("Compiler supports standard C.");    }    else    {        printf("Compile does not support standard C.");    }    return 0;}

使用gcc编译后运行的情况为:

Compiler supports standard C.

2、__DATE__和__TIME__

编译器在编译程序时,碰到__DATE__,会替换成当前的日期,碰到__TIME__,会替换成当前的时间。

例如下面的代码:

#include int main(){    printf("Date: %s, time: %s", __DATE__, __TIME__);    return 0;}

编译之后的运行结果是:

Date: May  2 2020, time: 01:05:58

__DATE__和__TIME__常常用来标识软件的生成时间。

3、__FILE__和__LINE__

编译器在编译程序时,碰到__FILE__,会替换成源文件名,碰到__LINE__,会替换成所编译代码在当前源文件中的行号。

例如下面的代码:

#include int main(){    printf("%s (%d), hello.", __FILE__, __LINE__);    return 0;}

程序编译之后运行的结果为:

test.c (6), hello.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值