首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何打印__FILE__正确扩展的字符串?

FILE是C/C++语言中的一个预定义宏,用于获取当前源文件的文件名。在打印FILE正确扩展的字符串时,可以使用以下方法:

  1. 使用printf函数打印FILE的值:
代码语言:c
复制
#include <stdio.h>

int main() {
    printf("当前文件名:%s\n", __FILE__);
    return 0;
}

输出结果将会是当前源文件的文件名。

  1. 使用C++的iostream库打印FILE的值:
代码语言:cpp
复制
#include <iostream>

int main() {
    std::cout << "当前文件名:" << __FILE__ << std::endl;
    return 0;
}

输出结果同样是当前源文件的文件名。

  1. 在C/C++中,可以使用宏定义来简化打印FILE的过程:
代码语言:c
复制
#include <stdio.h>

#define PRINT_FILE_NAME printf("当前文件名:%s\n", __FILE__)

int main() {
    PRINT_FILE_NAME;
    return 0;
}

通过定义一个宏PRINT_FILE_NAME,可以在需要打印FILE的地方直接调用该宏。

以上是在C/C++中打印FILE正确扩展的字符串的方法。在其他编程语言中,可能会有不同的方式来获取当前源文件的文件名,具体方法可以根据不同语言的特性进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

日志打印正确姿势!

使用slf4j 使用门面模式日志框架,有利于维护和各个类日志处理方式统一。...实现方式统一使用: Logback框架 打日志正确方式 什么时候应该打日志 当你遇到问题时候,只能通过debug功能来确定问题,你应该考虑打日志,良好系统,是可以通过日志进行问题定为。...当你碰到if…else 或者 switch这样分支时,要在分支首行打印日志,用来确定进入了哪个分支 经常以功能为核心进行开发,你应该在提交代码前,可以确定通过日志可以看到整个流程 基本格式 必须使用参数化信息方式...logger.isDebugEnabled()) { logger.debug("Processing trade with id: " +id + " symbol: " + symbol); } 不要进行字符串拼接...: 有容错机制时候出现错误情况 找不到配置文件,但是系统能自动创建配置文件 即将接近临界值时候,例如: 缓存池占用达到警告线 业务异常记录,比如: 当接口抛出业务异常时,应该记录此异常 INFO

1.7K20

如何正确打印异常堆栈信息

前言 最近老大让我修改项目里所有和log有关代码,之前我也用过log4j、slf4j或者Logback等日志框架/接口,一直以为打印异常信息就是简单地一句log.info()或者log.error()...如何正确打印异常堆栈信息? 一般在catch到异常时候,不要使用e.printStackTrace()来打印异常信息。...我们使用日志框架来打印信息,一般来说,日志框架log级别从低到高是:debug, info, warn, error, fatal。 对于异常,一般使用log.error()来打印堆栈信息。...下边三个log语句都打印了异常,但是写法却不一样,打印出来效果也是不同: 1 2 3 log.error("ERROR", "Error found: ", e); log.error("ERROR...对于第二个log语句,只是打印出了异常具体信息,既没有异常类名,也没有堆栈信息。 对于第三个log语句,打印出了异常类名和具体信息,但是没有打印出来堆栈信息。

1.5K00
  • 如何正确使用 Composer 安装 Laravel 扩展

    正确使用 Composer 安装 Laravel 扩展包: 简单解释composer install如有 composer.lock 文件,直接安装,否则从 composer.json 安装最新扩展包和依赖...流程三:为项目添加新扩展包 使用 composer require vendor/package添加扩展包; 提交更新后 composer.json和 composer.lock 到代码版本控制器中,...关于扩展安装方法 那么,准备添加一个扩展包,install, update, require 三个命令都可以用来安装扩展包,选择哪一个才是正确呢?...答案是:使用 composer require命令 另外,在手动修改 composer.json 添加扩展包后, composer update new/package 进行指定扩展包更新方式,也可以正确安装...,不过不建议使用这种方法,因为,一旦你忘记敲定后面的扩展包名,就会进入万劫不复状态,别给自己留坑呀。

    1.6K10

    字符串扩展

    字符串扩展 字符unicode表示法字符串遍历器接口直接输入U 2028和U 2029json.stringify()改造模板字符串 模板编译标签模板模板字符串限制 字符串unicode表示法...:es6加强对unicode支持,允许采用uxxxx形式表示一个字符 "\u0061" // "a" 这种表示法只限于码点在u0000~uFFFF之间字符 "\uD842\uDFB7" // "?"...true '\172' === 'z' // true '\x7A' === 'z' // true '\u007A' === 'z' // true '\u{7A}' === 'z' // true 字符串遍历器接口...`); // 普通字符串 `In JavaScript '\n' is a line-feed.` // 多行字符串 `In JavaScript this is not legal.` console.log...tag`Hello ${ a b } world ${ a * b}`; // "Hello " // " world " // "" // 15 // 50 // "OK" 模板字符串默认会将字符串转义

    33520

    字符串扩展

    字符串扩展 字符串扩展.png 字符 Unicode 表示法 JavaScript 允许采用\uxxxx形式表示一个字符,其中xxxx表示字符 Unicode 码点 ES6 对这一点做出了改进...,只要将码点放入大括号,就能正确解读该字符 codePointAt() JavaScript 内部,字符以 UTF-16 格式储存,每个字符固定为2个字节 对于这种4个字节字符,charAt方法无法读取整个字符...,charCodeAt方法只能分别返回前两个字节和后两个字节值 ES6 提供了codePointAt方法,能够正确处理 4 个字节储存字符,返回一个字符码点。...该方法不能识别码点大于0xFFFF字符 有一个提案,提出字符串实例at方法,可以识别 Unicode 编号大于0xFFFF字符,返回正确字符 有一个提案 normalize() ES6 提供字符串实例...,返回一个斜杠都被转义(即斜杠前面再加一个斜杠)字符串,对应于替换变量后模板字符串 模板字符串限制 模板字符串默认会将字符串转义,导致无法嵌入其他语言

    45530

    打印日志正确姿势和最佳实践!

    你知道越多,不知道就越多,业余像一棵小草! 你来,我们一起精进!你不来,我和你竞争对手一起精进!...,着实很痛苦,而且 debug 正确方式是优先使用日志,而不是一来就开 IDE 做 debug,这样效率会很低,另外,生产上不可能给你这么玩; 如果是全局配置最好还是 debug 吧,以 logback...> 可以全局输出为 info,把需要包设置成 debug,相当于只看我需要包下 debug 信息,其它包日志为 info 级别,比如我只想看自己项目包中 debug 信息如 me.ele.ebu...,可能还会导致高 cpu 和高 io; 正确打法是:log 占位符号 + 合理利用对象 toString(当然需要重写 toString,可以使用生成工具或是 lombok@data 注解)或是先判断是否是对应日志级别再打...,比起开发环境,生产环境日志就是取舍重要日志过程。

    86130

    如何在特定渗透测试中使用正确Burp扩展插件

    换个角度来看,我们如何能够选择和调整特定扩展插件以更好地满足我们需求呢?这就是本文想要跟大家分享东西了。...在这篇文章中,我们将简单地告诉大家如何自定义修改一款Burp扩展,并且根据自己渗透测试和安全审计需求来搭建出一个高效Burp环境。...如果扩展使用是Python或Ruby,那你就不用安装Java相关组件了,不过 Git还是会使用到。 获取代码 接下来我们要获取目标扩展源代码。...如果你不知道如何构建jar包的话,你可以查看BappManifest.bmf文件中BuildCommand相关内容。...下图显示是修改后扩展运行情况,表明我们自定义扩展已经能够正常工作了: 最后需要提醒大家是,不必要修改很可能会带来负面影响噢!

    2.6K70

    阅读资料新姿势:如何正确打印网页内容为PDF文件

    但有时候很多博客或者其他网站上有很多优秀资料,这时候想要把网页上内容打印下来放入平板中看,但总有些格式问题,其实花一点小心思就可以解决,从而实现完美打印。...(有时候将资料存在平板上静下心来阅读,才是真正收获开始) 如何正确打印 打印PDF步骤很简单,以Chrome谷歌浏览器为例,我们在页面上直接右键点击打印即可。...去掉遮挡 打印预览时候如果发现每一页最上方都会有一横杠遮挡住了我们要看内容,怎么办,当然是去掉它 返回当前网页,按下F12或者Ctrl+Shift+I(windows,mac将Ctrl换位cmd...: 这样原因是因为打印时候会自动调整当前网页中各种内容格式放到一起,如果东西太多就会加载不过来,这时我们需要删减一些东西 通过调整打印页码删除内容中不需要部分,比如评论部分 删掉网页内容中不需要装饰...,如下方网页左面一栏作者介绍就没有必要,直接通过F12网页调试器选择删除即可 删除之后经过调整就可以直接打印了,在阅读器上阅读自己收集文章吧~

    61240

    如何在 Python 中将对象打印字符串

    本文将详细介绍在 Python 中将对象打印字符串几种常用方法,并提供示例代码帮助你理解和应用这些方法。...方法二:使用 repr() 函数Python 内置 repr() 函数可以将对象转换为可打印字符串格式。这个函数会调用对象 __repr__() 方法来获取对象字符串表示形式。...最后,我们打印输出 string_representation,即将对象转换为字符串结果。...注意事项需要注意以下几点:在自定义类中,可以通过定义 __repr__() 方法来控制对象转换为字符串格式。这样可以使打印输出字符串更符合预期。...结论本文详细介绍了在 Python 中将对象打印字符串几种常用方法。

    1.5K30

    如果正确读取SQL Server中扩展事件?

    SQL Server中使用扩展事件捕捉所需信息后,可以选择存放位置。比如说内存或文件中,但无论存在哪里,其本质都是一个大XML。...因此在SQL Server中读取该XML就是解析扩展事件结果方式。 微软官方或者一些SQL Server论坛提供了使用SQL XML解析扩展事件脚本,如代码清单1所示。...) 30: SELECT * 31: FROM events_cte 32: ORDER BY [event time] DESC; 代码清单1.读取扩展事件文件脚本...但代码清单1脚本使用是XQuery,XQuery在使用Xml节点属性作为删选条件时,数据上千以后就会变得非常慢。...GROUP BY unique_event_id 70: ) 71: SELECT * 72: FROM tt 73: 代码清单2.对扩展事件结果优化读取方式

    3.3K40

    开发实例:如何使用Python逆序打印字符串

    在Python中,可以使用字符串切片来实现字符串逆序打印字符串切片是指从一个字符串中截取其中一段子串,并返回一个新字符串。与其他语言不同,Python使用冒号(:)来表示切片操作。...对于字符串s,如果想要将其逆序打印,则可以使用s[::-1]。这里切片操作符'::'表示从头到尾遍历整个字符串,-1表示倒序输出。...dlrow ,olleH 上述代码首先定义了一个包含字符串“Hello, world!”变量s,然后通过打印s[::-1]来将该字符串逆序输出。执行结果是“!...下面演示了如何按照这种方式逆序打印字符串: s = 'Hello, world!'...下面演示了如何按照这种方式逆序打印字符串: s = 'Hello, world!' new_s = ''.join(reversed(list(s))) print(new_s) # !

    14910

    如果正确读取SQL Server中扩展事件?

    SQL Server中使用扩展事件捕捉所需信息后,可以选择存放位置。比如说内存或文件中,但无论存在哪里,其本质都是一个大XML。...因此在SQL Server中读取该XML就是解析扩展事件结果方式。     微软官方或者一些SQL Server论坛提供了使用SQL XML解析扩展事件脚本,如代码清单1所示。...) 30: SELECT * 31: FROM events_cte 32: ORDER BY [event time] DESC; 代码清单1.读取扩展事件文件脚本...    但代码清单1脚本使用是XQuery,XQuery在使用Xml节点属性作为删选条件时,数据上千以后就会变得非常慢。...GROUP BY unique_event_id 70: ) 71: SELECT * 72: FROM tt 73:  代码清单2.对扩展事件结果优化读取方式

    1.4K90

    MySQL 如何正确安装

    所有平台 MySQL 下载地址为: MySQL 下载 。 挑选你需要 MySQL Community Server 版本及对应平台。...开发这个分支原因之一是:甲骨文公司收购了 MySQL 后,有将 MySQL 闭源潜在风险,因此社区采用分支方式来避开这个风险。...; 现在你可以通过以下命令来连接到Mysql服务器: [root@host]# mysql -u root -p Enter password:******* 注意:在输入密码时,密码是不会显示了,你正确输入即可...如果我们要登录本机 MySQL 数据库,只需要输入以下命令即可: mysql -u root -p 按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应: Enter password...提示语。 然后命令提示符会一直以 mysq> 加一个闪烁光标等待命令输入, 输入 exit 或 quit 退出登录。

    1.7K60

    ES6--字符串扩展

    最近开发小程序,对应ES6是一个很好应用机会。现在整理下ES6中字符串类型一些实用扩展,供大家参考。...目前主要是参考阮一峰老师ECMAScript 6 入门 字符串遍历接口 ES6为字符串添加了遍历接口,使得字符串可以被for..of遍历。...endsWith(): 返回布尔值,表示参数字符串是否在原字符串尾部。...'Clearlove'.padStart(5, '12'); // 'Clearlove' 如果用来补全字符串与原字符串,两者长度之和超过了指定最小长度,则会截去超出位数补全字符串。...String.raw() String.raw()方法,当作模板字符串处理函数,返回已替换变量或执行函数后字符串。若模板字符串中存在一个斜杠,则会被转义成两个斜杠。若本身为两个斜杠,则不做处理。

    47340
    领券