Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Win32控制台写入(C/C+;+;) 我想在C++程序中向控制台写入,而不使用“STD”库,也就是说,只使用“Windows .h”中的函数。原因是我想深入研究可移植可执行文件,看看调用的是这一个函数,而不是一堆函数层。有人知道如何执行此操作和/或在哪里可以找到“Windows.h”函数的指南吗?_C++_Winapi - Fatal编程技术网

Win32控制台写入(C/C+;+;) 我想在C++程序中向控制台写入,而不使用“STD”库,也就是说,只使用“Windows .h”中的函数。原因是我想深入研究可移植可执行文件,看看调用的是这一个函数,而不是一堆函数层。有人知道如何执行此操作和/或在哪里可以找到“Windows.h”函数的指南吗?

Win32控制台写入(C/C+;+;) 我想在C++程序中向控制台写入,而不使用“STD”库,也就是说,只使用“Windows .h”中的函数。原因是我想深入研究可移植可执行文件,看看调用的是这一个函数,而不是一堆函数层。有人知道如何执行此操作和/或在哪里可以找到“Windows.h”函数的指南吗?,c++,winapi,C++,Winapi,使用纯Win API: HANDLE stdOut = GetStdHandle(STD_OUTPUT_HANDLE); if (stdOut != NULL && stdOut != INVALID_HANDLE_VALUE) { DWORD written = 0; const char *message = "hello world"; WriteConsoleA(stdOut, message, strlen(message), &writ

使用纯Win API:

HANDLE stdOut = GetStdHandle(STD_OUTPUT_HANDLE);
if (stdOut != NULL && stdOut != INVALID_HANDLE_VALUE)
{
    DWORD written = 0;
    const char *message = "hello world";
    WriteConsoleA(stdOut, message, strlen(message), &written, NULL);
}
MSDN是您最好的文档来源之一:

使用纯Win API:

HANDLE stdOut = GetStdHandle(STD_OUTPUT_HANDLE);
if (stdOut != NULL && stdOut != INVALID_HANDLE_VALUE)
{
    DWORD written = 0;
    const char *message = "hello world";
    WriteConsoleA(stdOut, message, strlen(message), &written, NULL);
}
MSDN是您最好的文档来源之一:

替代Win32 API:

#ifndef UNICODE
    std::stringstream ss;
    ss << TEXT("Hello world!") << std::endl;

    OutputDebugString(ss.str().c_str());

    OutputDebugStringA(ss.str().c_str());
#endif

#ifdef UNICODE
    std::wstringstream wss;
    wss << TEXT("Hello world!") << std::endl;

    OutputDebugString(ss.str().c_str());

    OutputDebugStringW(wss.str().c_str());
#endif
#ifndef UNICODE
std::stringstream-ss;
ss替代Win32 API:

#ifndef UNICODE
    std::stringstream ss;
    ss << TEXT("Hello world!") << std::endl;

    OutputDebugString(ss.str().c_str());

    OutputDebugStringA(ss.str().c_str());
#endif

#ifdef UNICODE
    std::wstringstream wss;
    wss << TEXT("Hello world!") << std::endl;

    OutputDebugString(ss.str().c_str());

    OutputDebugStringW(wss.str().c_str());
#endif
#ifndef UNICODE
std::stringstream-ss;

ss FWIW,对于写入控制台,有一个函数字面上称为
WriteConsole
。它也有变体。FWIW,对于写入控制台,有一个函数字面上称为
WriteConsole
。它也有变体。如果
GetStdHandle
WriteConsole
返回false,则可能需要使用
alloconsole
。如果
GetStdHandle
WriteConsole
返回false,则可能需要使用
alloconsole