[英]a “?” before the string
我想使用字符串來輸入文件的路徑:
char** argv;
char* mytarget[2]={ (char*)"D:\\testlas\\BigOne.pcd",(char*)"D:\\testlas\\SmallOne.pcd" };
argv = mytarget;
for(int i=0;i<2;i++)
{
std::cout << "m.name: " << argv[i] <<std::endl;
}
但是, cout 輸出:
m.name: ?D:\\testlas\\BigOne.pcd
m.name: ?D:\\testlas\\SmallOne.pcd
為什么有一個?
在弦之前?
我使用VS2017 C++11。
我創建了一個新程序並使用了代碼:
#include <iostream>
#include <string>
#include <cstring>
using namespace std;
int main()
{
std::string test = "abc789";
cout << test << endl;
return 0;
}
它還輸出"?abc789"
。 為什么?
std::string test = "abc789";
在開頭的引號"
和第一個字母a
(Unicode 字符U+202A
或 UTF-8 E2 80 AA
)之間有一個隱藏的LEFT-TO-RIGHT EMBEDDING字符。刪除它,例如通過刪除並重新鍵入該行,然后?
將 go 帶走。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.