一起talk C栗子吧(第一百二十四回:C语言实例--内置宏)
2024-08-30 17:38:21
各位看官们,大家好,上一回中咱们说的是显示变量和函数地址的样例,这一回咱们说的样例是:内置宏。闲话休提,言归正转。让我们一起talk C栗子吧!
看官们,我们在编译程序的时候,假设有语法错误,编译器就会提示,在某个文件的某一行有错误,这是怎么做到的呢?事实上是使用了C语言的内置宏。
说到宏,我想大家都知道,而所谓的内置宏相似于C语言的关键字,它是C语言自定义的,因此我们不须要定义宏,就能够直接使用。经常使用的内置宏有“_LINE_”和“_FILE_”。假设把它们放到代码中,那么能够输它们所在位置的行号和所在的文件名称。编译器输出错误的文件名称和行号时就使用了它们。
事实上,它们经常被用来在文件里加入调试信息。由于我们写的程序难免会有错误,所以须要对程序进行调试。在文件里加入内置宏后,我们通过调试能够高速地找到发生错误在哪个文件里的哪一行。
这样就能够高速改动程序中的错误,进而提高了工作效率。
看官们,我们举一个简单的样例。来说明内置宏的使用方法,以下是具体的代码请大家參考:
#include<stdio.h>
int show()
{
printf("hello \n");
printf("file:%s line:%d \n",__FILE__,__LINE__);
return 0;
}
int main()
{
printf("file:%s line:%d \n",__FILE__,__LINE__);
show();
return 0;
}
我们在代码中通过内置宏来输出当前的文件名称和行号。以下是程序的执行结果,请大家參考:
file:test.c line:13 //这是main函数中的内容
hello
file:test.c line:7 //这是show函数中的内容
各位看官,关于内置宏的样例咱们就讲到这里。欲知后面还有什么样例。且听下回分解 。
最新文章
- ThreadLocal 源码剖析
- myeclipse安装flex插件后代码无自动提示及自动补全无效的解决办法
- poi解析excel 03、07
- HDU 1044
- USB设备驱动
- 简单版问卷调查系统(Asp.Net+SqlServer2008)
- sql中 with rollup 、with cube、grouping 统计函数用法
- iOS网络监测如何区分2、3、4G?
- 剑指Offer:连续子数组的最大和
- 复制文件时,如何显示进度条(使用TFileStream一点一点读,或者使用BlockRead)
- 使用OAuth2.0访问豆瓣API
- struts(三)——struts框架实现登录示例
- Linux学习之Linux目录及文件系统
- 激活IDEA
- java 下载word freemaker
- python(list、字典、元组、字符串方法、文件读写)草稿
- django生成迁移文件
- MySQL数据库localhost的root用户登陆遭遇失败
- memcached内存管理机制[未整理]
- TI webench 一款不错的软件
热门文章
- bzoj 1098 [POI2007] 办公楼 biu
- java读取配置文件的推荐方法getResource、getResourceAsStream
- 条款28:避免返回handles指向对象内部的成分(Avoid returning ";handles"; to objects internals)
- c++ 高精度 加减乘除 四则运算 代码实现
- poj2891 Strange Way to Express Integers poj1006 Biorhythms 同余方程组
- Web框架下安全漏洞的测试反思
- NYOJ301-递推求值
- Go 在游戏行业中的工程实践
- POJ1159:Palindrome【dp】
- 【分块打表】bzoj 3758 数数