c++ - 如何将字符串和数字放在多维数组中?

标签 c++ multidimensional-array

与其他问题的区别

首先,我是初学者,至少有两题看不懂。其次,我看到的其中一个问题以一种全新的方式应用了这个概念。他们有其他变量和函数使我对他们的代码的看法变得模糊。

目标

我正在使用 SoloLearn 作为 C++ 解释器,我似乎无法在包含数字的多维数组中获取字符串。所以我很感激你们告诉我我需要修复什么,以便在我运行我的代码时没有错误消息。

代码

#include <iostream>
using namespace std;

int main()
{
    int numberArray [2] [3] = {{1, 2, 3}, {4, 5, "null"}};
    return 0;
}

错误信息

..\Playground:在函数“int main()”中:

..\Playground:6:57: 错误:从“const char*”到“int”的无效转换 [-fpermissive] int numberArray [2] [3] = {{1, 2, 3}, {4 , 5, "空"}};

尝试

我试图将 int 更改为 string,但这是我屏幕上显示的内容:编译错误。我不想让任何东西出现在我的屏幕上。我还尝试将 int 更改为 bool,但显示的只是:No output.

最佳答案

首先,“string”不起作用的原因是您没有将 string 作为包包含在内。放

#include <string>;

在其他包含指令之下

其次,我不认为你可以在 C++ 中混合类型

我同意您开始采用的方法 - 使多维数组成为“字符串”

全部加载为字符串(即加载 4 作为“4”)

读取这个数组时,使用 C++ 函数 atof 检查有问题的条目

您需要包含 #include <stdlib.h>

如果 ascii 是 float ,atof 将返回一个 float

否则会抛出异常

你可以这样区分数字和文字

关于c++ - 如何将字符串和数字放在多维数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48122208/

相关文章:

c - 通过函数将值存储在二维数组中

c++ - 如何重启套接字程序?

c++ - G++ 编译器 : Segfault handling

c++ - 从日志格式中解耦异常

c++ - 粗体/强调或突出显示单元格中的 fprintf mfc c++

c - <错误: Cannot access memory at address 0x0> 3d array malloc

c++ - 如何释放函数中分配的内存

c - 在 C 中传递二维数组

java - 在Java中通过二维数组生成所有路径/路线

c++ - 查找二维数组C++中每一行的最大值