gpt4 book ai didi

c++ - 函数错误中的数组字符串

转载 作者:行者123 更新时间:2023-11-28 05:44:38 26 4
gpt4 key购买 nike

所以,我需要为我的作业挽救这个大程序,但我无法理解我在函数中为这个字符串数组得到的错误。
在 stockSymbol = """"的 =我一直收到错误
'错误:无法将值类型“const char *”分配给“std::string *”类型的实体
我包括了定义字符串的位置和函数。任何人对正在发生的事情以及如何解决这个问题有任何想法吗?

int menu()

{
int actents = 0;

int opt = 0;

string stockSymbol[MAXENTS];

double stockShares[MAXENTS];

double stockPrice[MAXENTS];

int opt;

string opts;

void resetPortfolio(string stockSymbol[], double stockShares[], double stockPrice[], int & actents)

{
// code logic to set all entries of the stock symbol array to ""
stockSymbol = "\"\"";
// code logic to set all entries of the other arrays to 0
stockShares = 0;
stockPrice = 0;
// set the number of actual entries in the arrays (actents) to 0
actents = 0;
return;
}

最佳答案

stockSymbolstockSharesstockPrice 都是指向数组第一个元素的指针。您不能只分配给它们来设置它们元素的值。相反,您需要遍历数组并设置每个元素的值。

void resetPortfolio(string stockSymbol[], double stockShares[], double stockPrice[], int & actents)
{
for (int i = 0; i < actents; ++i) {
// code logic to set all entries of the stock symbol array to ""
stockSymbol[i] = "";
// code logic to set all entries of the other arrays to 0
stockShares[i] = 0;
stockPrice[i] = 0;
}
// set the number of actual entries in the arrays (actents) to 0
actents = 0;
}

您发布的代码还有其他问题。 menu() 永远不会关闭,您实际上也不会调用 resetPortfolio()

关于c++ - 函数错误中的数组字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36466326/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com