【发布时间】:2020-04-25 16:36:27
【问题描述】:
我不记得如何在 C++ 中做到这一点:
#include <iostream>
#include <conio.h>
#include <string.h>
int main(){
char categorias[3][20];
/*char pais[3][20];
char movimiento[3][50];
char obras[100][50]; */
categorias[0]="Alta";
categorias[1]="Media";
categorias[2]="Baja";
}
这会引发此错误:19 15 C:\Users\dell\Desktop\Subasta.cpp [Error] incompatible types in assignment of 'const char [5]' to 'char [20]';
很久以前我不使用 C++,我无法解决问题。
【问题讨论】:
-
使用
std::string而不是char[],你的生活会轻松很多。 -
这不是字符串数组,而是字符数组。要复制到字符数组,请使用 strcopy 或其他东西。不过,我建议使用
std::array<std::string,3> categorias而不是char[3][20]。 -
请注意,
Dev C++是 IDE 而不是编译器。我假设您使用的是某个版本的 mingw。 -
main(){inc++你不应该在main之前省略int。 -
categorias[0]="Alta";c 字符串不可分配。将char categorias[3][20];替换为std::string categorias[3];即可完成分配。