VS 动态库中增加对printf和cout等控制台console窗口的支持

动态库本身是不支持console窗口的输出的,有人可能会说通过TRACE的方式啊,但是这是需要MFC支持的,如果我们的是纯windows的dll,此方法就不行了,

智能老老实实用printf或者cout的方式。

可采用如下办法:

在调用dll的exe项目中,通过设置后处理事件来支持调试输出。

右键项目属性->Build Events->Post-Build Event,在命令行中增加如下命令(不同命令用分号隔开)

editbin  /SUBSYSTEM:CONSOLE   "xxx.exe"

其中,exe的名称即为调用dll的exe,需要相对路径或绝对路径。


配好之后,编译完成,每次运行时,就可以显示console窗口了,也就可以看到dll中printf的内容了。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: C++ printfcout 都可以用来输出内容到控制台。它们的区别主要在以下几个方面: 1. 使用方式:printf 是 C 语言的输出函数,需要在头文件引入 stdio.h,使用时需要按照格式字符串指定要输出的内容和格式。而 cout 是 C++ 的输出流对象,不需要引入头文件,可以直接使用流操作符 << 进行输出。 2. 输出格式:printf 可以输出多种不同类型的数据,例如整型、浮点型、字符串等,需要使用不同的格式符号进行指定。cout 也可以输出多种类型的数据,但是不需要使用格式符号,可以根据数据类型自动选择合适的输出方式。 3. 可读性:cout 输出的内容更易读,因为它可以根据数据类型自动选择合适的格式,并且输出的内容更加清晰、易于理解。而 printf 需要手动指定格式,容易出现格式错误或者输出结果不易读的情况。 4. 执行效率:printf 的执行效率比 cout 高,因为 printf 是基于 C 语言的标准库实现的,输出的速度更快。而 cout 是 C++ 的标准库实现的,相比之下,执行效率较低。 总的来说,printfcout 都可以用来输出内容到控制台,使用时需要根据具体情况选择合适的输出方式。如果对输出格式要求较高,建议使用 printf;如果对可读性要求较高,建议使用 cout。 ### 回答2: printfcout是C语言两个常用的输出函数。它们都可以用来将数据输出到屏幕上,但是它们有几个区别。 首先,printf是一个函数,它需要写在函数调用。而cout是一个C++的运算符,可以直接使用。因此,在C++使用cout要比在C语言使用printf更加方便。 其次,printf的输出格式比较严格,需要使用格式指示符来控制输出的格式。但是,cout则可以根据输出类型自动选择输出格式,不需要指定格式。 此外,printfcout的输出方式也有所不同。printf通过将输出数据格式化成一个字符串并输出到屏幕,而cout则使用流的方式逐个输出字符。 总的来说,printfcout之间有一些微妙的差别,但它们都是C语言常用的输出函数,开发人员可以根据需要选择适合自己的输出函数。对于新的C++项目,使用cout是更好的选择,但是在C语言项目printf是必不可少的。 ### 回答3: printf()和cout << 都是C++常见的输出函数,两者具有不同的特点和用法。 printf()是C语言的标准输出函数,需要包含<stdio.h>头文件才可以使用。其基本格式是:printf("format", arg1, arg2,...)。其,format指定输出格式字符串,arg1、arg2等表示输出的参数。printf()支持多种格式转换符,如%d表示输出一个整数,%f表示输出一个浮点数,%s表示输出一个字符串等等。 cout << 是C++的输出函数,需要包含<iostream>头文件才能使用。与printf()不同,cout << 的格式是:cout << expression1 << expression2 << ...。其,expression1、expression2等表示输出的表达式,可以是字符串、整数、浮点数等。cout << 会自动根据表达式的类型自动选择合适的输出方式,比如整数输出就使用十进制。 与printf()相比,cout << 更为直观、易于使用,而且可以避免格式化字符串等复杂操作。另外,cout << 支持链式操作,可以同时输出多个表达式,代码更加简洁。 总之,printf()和cout << 都是常用的输出函数,具有不同的特点和使用方式。在实际编程,根据具体的需求选择合适的输出函数会更为有效和便捷。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值