1
A
回答
1
如果字符串为null-terminated,你可以简单地使用:
std::cout << PEFile->ExportTable.pNames[i] << std::endl;
(使用std::wcout
如果UNICODE
定义和pNames[i]
是LPCWSTR
。)
如果既没有空终止符也没有字符串长度,那么你就搞砸了!
2
这是一个有点难以解释,因为它的暧昧,但是......
如果.pNames本身就是一个空终止字符数组(C-字符串)或C++字符串,只是做:
std::cout << (DWORD*)PEFile->ExportTable.pNames;
如果.pNames [i]是一个空终止字符数组(C字符串),只是做:
std::cout << (DWORD*)PEFile->ExportTable.pNames[i];
如果它是一个非空terimnated字符数组,你不知道大小, 你有麻烦了。
如果你有字符数组的大小,但它不是以null结尾,你可以迭代它并打印。 std::copy(PEFile->ExportTable.pNames[i], PEFile->ExportTable.pNames[i] + length, std::ostream_iterator<char>(std::cout, ""));
会在一行中为你做到这一点。
+1
请注意,转换为DWORD *可能需要打印字符串的地址,而不是其内容。 –
0
如果你是认真的为C,而不是C++:
printf("%s", PEFile->ExportTable.pNames[i]);
相关问题
- 1. 打印指针地址
- 2. 使用C中的字符指针打印字符串
- 3. 获取指针字符指针的地址字符指针
- 4. c指针指向的数组的打印地址
- 5. 使用指向字符的指针打印字符数组。
- 6. 从二维数组打印字符串使用指针指针
- 7. 从字符指针打印字符
- 8. 打印C指针
- 9. 使用带指针的putch打印字符串C
- 10. 无法在C++中打印指针的地址
- 11. 在C中打印指针地址[两个问题]
- 12. 如何在C++中打印方法指针的地址?
- 13. C:了解指针,打印地址失败
- 14. 使用另一个指针指向地址的指针C
- 15. 打印字符串流输出指针
- 16. 指针的C++打印值
- 17. 用指针指向某个地址c#
- 18. 用指针打印
- 19. 字符指针的地址变化
- 20. C指针和地址
- 21. C++指针地址解释
- 22. Objective-C指针地址
- 23. 函数指针地址(C++)
- 24. C++中的指针地址
- 25. C++:指针值地址
- 26. C++地址和指针
- 27. C指针,指针,字符
- 28. C++ - 使用指针,打印地址而不是值,为什么? (使用运算符)
- 29. Lua中字符串的打印地址
- 30. 字符数组的打印地址
这实际上是一个指向'DWORD'。 'PEFile-> ExportTable.pNames'的类型是什么? –