【发布时间】:2023-03-07 17:52:02
【问题描述】:
如果我有一个字符串:
std::string Pooptacular = "Pooptacular"
我想将其转换为 char 数组,我有一些选择 一个是:
char* poopCArr = Pooptacular.c_str();
或者我可以用 memcpy 或 strcpy 等做一些事情。
我想知道的是,这些方法中哪个最快 或最有效的。换句话说,如果我应该使用哪种方法 我要在一个程序运行中执行数十万次?
【问题讨论】:
-
取决于使用情况。
.c_str()不复制任何东西,只是将const char*返回到内存中,在std::string中使用。你会修改它吗?另外,const char* poorCArr不是char数组。 -
你试过测量什么吗?
标签: c++ arrays string char memcpy