记录linux C/C++ 宏定义 __FILE__、__LINE__、__FUNCTION__、__DATE__、__TIME__

1.1 __FILE__

  作用:表示当前源文件名,类型为字符串常量;

#include <stdio.h>
int main()
{
    printf("%s\n", __FILE__);
    return 0;
}
  输出为:

# ./test
test.c


1.2 __LINE__

作用:代表当前程序行的行号,类型为十进制整数常量;

#include <stdio.h>
int main()
{
    printf("%d\n", __LINE__);
    printf("%d\n", __LINE__);
    return 0;
}
输出为:

# ./test
5
6


1.3 #line

语法:#line 行号 [“文件名”]

作用:将行号和文件名更改为指定的行号和文件名;

#include <stdio.h>
#line 100 "test-new.c" // 更改下一行的行号和源文件名
int main()              // line 100
{
    printf("%d\n", __LINE__); // line 102
    printf("%d\n", __LINE__); // line 103
    printf("%s\n", __FILE__);
    return 0;
}
输出为:

# ./test 
102
103
test-new.c


1.4 __func__ 和 __FUNCTION__

作用:代表当前函数的函数名,类型为字符串常量;

#include <stdio.h>
int main()
{
    printf("%s\n", __func__);
    printf("%s\n", __FUNCTION__);
    return 0;
}
输出为:

# ./test 
main
main


1.5 __DATE__

作用:代表日期,形式为Mmm dd yyyy 的字符串常量;

#include <stdio.h>
int main()
{
    printf("%s\n", __DATE__);
    return 0;
}
输出为:

# ./test 
Aug  9 2020


1.6 __TIME__

作用:代表时间,hh:mm:ss 形式的字符串型常量;

#include <stdio.h>

int main()
{
    printf("%s\n", __TIME__);
    return 0;
}
输出为:

# ./test 

16:38:52

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/723728.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hyperf代码目录规划尝试

app--|- Common 统一封装非业务|- Constants|- Controller|- Exception|- Kernel 统一封装业务|- Listener|- Model|- Process|- Request|- Service|- Task|- Util 工具 Helper和Util Util类&#xff0c;一般是无状态的&#xff0c;只包含静态方法。使用时无需创建类的实例。 …

[JavaWeb学习日记]JSP+Cookie+Filter与登录+CRUD案例

目录 一.JSP 二.EL表达式与JSTL标签 三.Cookie 四.Session 五.Filter 六. 登录CRUD:品牌增删改查案例 Demo一览 1.导包 2.构建包结构 3.创建数据库表tb_brand与user 4.创建实体类 5.mybatis的配置文件和logback配置文件 6.写接口 7.工具类&#xff1a;生成图片与…

leetcode.15三数之和

链接&#xff1a;https://leetcode.cn/problems/3sum 题目描述 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k &#xff0c;同时还满足 nums[i] nums[j] nums[k] 0 。请返回所有和为 0 且不重复的三元组。…

信息抽取技术:电商领域的智能化革命与市场策略优化

一、引言 在当今快速发展的互联网电商领域&#xff0c;信息抽取技术的应用已经成为商家优化供应链、降低成本、提高响应速度的关键手段。随着消费者需求的日益多样化和个性化&#xff0c;电子商务平台需要更高效、智能的数据处理能力来应对市场的挑战。从供应商管理到库存优化…

[Latex]矩阵的三种关系(等价,相似,合同)的符号

\cong \sim \simeq 对应的Latex实现分别为&#xff1a; ≅ \cong ≅ ∼ \sim ∼ ≃ \simeq ≃

试一试点赞和收藏机制

如果你不是机器人&#xff0c;请在点赞或收藏的同时评论&#xff0c;内容为你最爱吃的食物

Image Fusion via Vision-Language Model【文献阅读】

阅读目录 文献阅读AbstractIntroduction3. Method3.1. Problem Overview3.2. Fusion via Vision-Language Model 4. Vision-Language Fusion Datasets5. Experiment5.1Infrared and Visible Image Fusion 6. Conclusion个人总结 文献阅读 原文下载&#xff1a;https://arxiv.or…

B树和B+树的区别是什么?

什么是B树 B树是一种自平衡的多路查找树&#xff0c;主要用于减少磁盘I/O操作&#xff0c;提高数据库的查询效率。 多路查找&#xff1a;B树是一个多路平衡查找树&#xff0c;这意味着它可以拥有多个子节点&#xff0c;从而能够更有效地利用存储空间和减少树的高度。自平衡&a…

HTML入门:简单了解 HTML 和浏览器

你好&#xff0c;我是云桃桃。今天来简单了解一下 HTML 以及浏览器。 HTML 是什么&#xff1f; HTML&#xff08;全称&#xff1a;Hypertext Markup Language&#xff09;是一种标记语言&#xff0c;用于创建和呈现网页的结构和内容。 它由一系列标签&#xff08;或称为元素…

android开发视频教程百度网盘,深入浅出Android

基于Linux的pc启动过程 我们都知道&#xff0c;所有的程序软件包括操作系统都是运行在内存中的&#xff0c;然而我们的操作系统一般是存放在硬盘上的&#xff0c;当我们按下开机键的时候&#xff0c;此时内存中什么程序也没有&#xff0c;因此需要借助某种方式&#xff0c;将操…

客户案例|提质增速 某县医院运维升级实例

一、项目背景 2023年12月&#xff0c;安徽某县医院接入226个资产&#xff0c;正式成为平台客户。 据moc介绍&#xff0c;客户经历了3个月的长效试用期&#xff0c;通过对平台的监控效果、趋势预测、故障响应速度、技术支持、moc服务等全方位体验后&#xff0c;才谨慎地成为正式…

圆形动画 小球在轨道上循环运动 点击按钮停止开始 在次点击 动画开始

圆形动画 小球在轨道上循环运动 点击按钮停止开始 在次点击 动画开始

Vue-04

Vue 指令 指令补充 指令修饰符&#xff1a;通过"."指明一些指令后缀&#xff0c;不同后缀封装了不同的处理操作 → 简化代码 按键修饰符 keyup.enter → 键盘回车监听 在input中使用keyup.enter&#xff0c;这个时候按enter键也能实现添加&#xff0c;和点击按钮实…

目前最新的集运行业发展及运营模式介绍

集运系统紧跟时代发展潮流&#xff0c;提供“集运系统代购商城”&#xff0c;通过系统掌握C端用户数据&#xff0c;发展代购、电商业务。 跨境电商物流市场蓬勃发展&#xff0c;拥有十万亿量级的增长空间&#xff0c;跨境电商市场规模及进出口总额都呈上升趋势&#xff0c;而未…

CAN总线的拓扑类型和CAN收发器(原理讲解)

1&#xff1a;CAN收发器&#xff08;原理讲解&#xff09; 从原理上来讲CAN_H拉升电压&#xff0c;或CAN_L拉低电压的原理。 以上是TJA1145AT的俯瞰图&#xff0c;此芯片是NXP比较先进的CAN收发器&#xff0c;带SPI总线系统。 回到正题&#xff0c;CAN_H和CAN_L收发器是通过内…

c++|内存管理

c|内存管理 C/C内存分布strlen 和 sizeof的区别 c语言动态内存管理方式malloccallocrealloc例题 c管理方式new/delete操作内置类型new/delete操作自定义类型证明 new 和 delete 的底层原理operator new与operator delete函数operator new 和 operator delete的 用法构造函数里面…

【unity实战】3D水系统,游泳,潜水,钓鱼功能实现

文章目录 素材将项目升级为URP画一个水潭地形材质升级为URP创建水调节水第一人称人物移动控制游泳水面停留添加水下后处理水下呼吸钓鱼参考完结 素材 https://assetstore.unity.com/packages/vfx/shaders/urp-stylized-water-shader-proto-series-187485 将项目升级为URP 这…

使用KVM服务创建虚拟机(简化版)

1. 规划节点 KVM服务虚拟机节点规划&#xff0c;见表。 IP主机名节点192.168.100.10localhostKVM 2. 基础准备 使用VMWare Workstation软件安装CentOS 7.2操作系统&#xff0c;镜像使用提供的 CentOS-7-x86_64-DVD-1511.iso&#xff0c;关闭防火墙并且配置SELinux规则&…

八年老程序员的一二月总结:回家过年、阅读挑战、线下新体验

大家好&#xff0c;我是拭心&#xff0c;一名工作八年的程序员。 每两个月我会做一次总结&#xff0c;为的是留一些回忆、评估自己的行为、沉淀有价值的信息。 回顾一二月&#xff0c;原来发生了这么多事&#xff0c;趁着周末记录一下吧。 有意义的事 1.回家过年 今年回内…

【STM32详解FLASH闪存编程原理与步骤】

STM32详解FLASH闪存编程原理与步骤 FLASH编程注意事项FLASH编程过程STM32的FLASH擦除过程FLASH全片擦除FLASH操作总结锁定解锁函数写操作函数擦除函数获取状态函数等待操作完成函数读FLASH特定地址数据函数 FLASH编程注意事项 1.STM32复位后&#xff0c;FPEC模块是被保护的&am…