【发布时间】:2020-04-17 08:20:11
【问题描述】:
我遇到了一个任务,我必须输入要处理的字符串数,然后分别显示偶数定位字符和奇数定位字符。
在输入字符串数量后,我对如何声明字符串数组感到困惑。
我可以调用一个指向二维数组的指针并使用要处理的字符串数的 int 值吗?如果是,如何?如果没有,有什么替代方案?
【问题讨论】:
-
std::vector<std::string> sArray(number_of_strings). -
在不需要时不要使用原始指针。当您想要指向其他对象时,您需要原始指针,但首先您需要该其他对象。在 C++ 中处理数组指针在上个世纪是可以的,但现在不行了;)
-
请添加您的努力 = 您编写的代码。
-
所以看起来你正在学习如何以 C 风格编程,即使你认为你正在学习 C++。在 C 中,您将编写
char** arr = malloc(number*sizeof(char*));,类似的代码将在 C++char** arr = (char**)malloc(number*sizeof(char*));中运行。但实际上你应该学习 C++ 的做事方式,即使用std::vector和std::string,更不用说混淆了。 -
非常感谢你们的反馈。事实上,我是一名 C 程序员,并且已经离开实践十多年了。我只想重新开始编码并学习新的语言和技术。我将尝试 std::vector 和 std::string。 :)
标签: c++ arrays pointers multidimensional-array