0
如何從我的內存緩衝區讀取數據?C++ - 從緩衝區讀取數據
const char *buf
,然後打印出來這樣
MessageBoxA(NULL, "Buf: " + buf, " ", MB_OK);
如何從我的內存緩衝區讀取數據?C++ - 從緩衝區讀取數據
const char *buf
,然後打印出來這樣
MessageBoxA(NULL, "Buf: " + buf, " ", MB_OK);
std::string str = "Buf: ";
str += buf; // I assume buf is a null terminated string
MessageBoxA(NULL, str.c_str(), " ", MB_OK);
不能在字符串文字和/或char*
申請+
。其中一個操作數必須是std::string
才能夠利用std::string
的operator+
過載。
如果您buf
是一個字符數組,然後像這可能是工作:
std::string("Buf: ") + buf
這就要求buf
是空值終止。
如果buf
不是空終止然而,Tony D的解決方案應該工作。
如果您使用C++,請使用字符串類。 std :: string或任何你最喜歡的庫使用。 – nvoigt
這取決於你用_read_表示的意思。來自哪裏?去哪裏? –
你可以試試'(「Buf:」+ std :: string(buf,n))。c_str()'...你需要計算出緩衝區中有多少個字節--n。我只是猜測這個'MessageBoxA'函數會接受一個'const char *'參數。 –