gpt4 book ai didi

C++ 返回数组并将其分配给变量

转载 作者:太空宇宙 更新时间:2023-11-04 13:38:25 25 4
gpt4 key购买 nike

<分区>

所以我有一个家庭作业问题要求我编写一个函数,该函数接受一个字符数组、一个字符和一个 int 指针。该函数应遍历字符数组,忽略第二个参数 char 的任何实例,并创建一个新数组,该数组由原始数组中的字符组成,而不是第二个参数 char 的实例。然后需要将原来的长度参数更改为新的长度,并返回新的数组。我是 C++ 的新手,所以指针是一个我还没有完全掌握的新概念。

char *Problem5(char chars[], char letter, int *length){
int newLength=0;
int counter=0;
for(int i=0;i<*length;i++){
if(chars[i]!=letter){
newLength++;
}
}
char newChars[newLength];
for(int x=0;x<*length;x++){
if(chars[x]!=letter){
newChars[counter]=chars[x];
counter++;
}
}
*length=newLength;
return newChars;
}

这是我的函数,我知道算法可以正常工作,但无法编译。

    char chars2[10] = {'g','g','c','g','a','g','g','g','t','g'};
printArray(chars2,10);
char *arrayPointer;
arrayPointer = Problem5(chars2,'g',length1);
printArray(arrayPointer,3);

这是调用它的主要函数部分。我需要打印出结果数组,所以我尝试将它分配给一个指针,但是这一行:

arrayPointer = Problem5(chars2,'g',length1);

抛出错误:从 'char' 到 'char*' 的转换无效 如果能提供一点洞察力,我将不胜感激,因为我不知道自己做错了什么。

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