[英]Character pointer passed as parameter converting to string
嗨,我是C ++的新手,我需要一些輸入以解決以下問題:
在我的頭文件(MyClass.h)中,一個函數定義為:
bool Function(char *InString,char *outStr);
這已在“ MyClass.cpp”中實現,如下所示:
bool MyClass::Function(char *InString,char *OutString=0) {
std::string str = ***** I require the InString to be converted to String and assigned to str.
}
在控制台的主要功能中,我使用了以下功能:
#include "MyClass.h"
int _tmain(int argc, _TCHAR* argv[]) {
char inp[50];
char output[50];
memset(output,0,sizeof(output));//Intialized
std::cin>>inp;
MyClass x;
bool m = x.Function(inp,output);
}
任何幫助深表感謝。
通過
str.assign(InString);
您可以將一個char
分配給std::string
。
您可以僅將字符指針分配給字符串。 只要字符指針指向的數據終止為空,該副本將按預期工作。
std::string str = InString;
只是std::string str = InString;
應該管用。
好std::string
為此有一個構造函數:
const char *s = "\nHello, World!";
std::string str(s);
cout<<str;
char *s2 = "\nHello, World!";
std::string str2(s2);
cout<<str2;
給我:
你好,世界!
你好,世界!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.