【问题标题】:FindFirstFile() show addressFindFirstFile() 显示地址
【发布时间】:2012-05-18 07:01:36
【问题描述】:

我使用了 FindFirstFile() 函数,但我只收到了内存地址,而不是文件名。

#include <stdafx.h>
#include <iostream>
#include <windows.h>

using namespace std;


int main()
{
    WIN32_FIND_DATA File_Data;  

    FindFirstFile(TEXT("C:\\Users\\user\\Desktop\\temp\\*.tmp"), &File_Data);
    cout<<File_Data.cFileName;

    cin.get();
    return 0;
}

谁能帮帮我?

【问题讨论】:

  • 您正在构建一个 UNICODE 应用程序吗? (或者,换个方式问,WIN32_FIND_DATA::cFileName 的类型是什么?)

标签: c++ file function find


【解决方案1】:

您可能正在使用 Unicode 字符集进行编译,这意味着 Windows API 会将所有字符串默认为宽版本(wchar_t 与 char)。尝试使用cout (wcout) 的宽输出版本:

wcout<<File_Data.cFileName;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-04
    • 2014-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多