最近在学习C++的代码编程,打算把课后的代码实验再做一遍。对于c++小白的我而言,出现没见过的错误真的难受,一下就是一项。
定义如下形式的字符串char *testString = “This is test string…”
先看代码:
#include <iostream>
#include <string> // 字符串赋值需要用到这个指针
using namespace std;
class Student
{
private:
char num[10]; // 学号可以看做固定长度的字符串,可以放在一个字符数组中
char* name; // 姓名可以声明为字符指针类型
int score; // 声明成绩
public:
void setstudent(char* nump, char* namep, int scor)
{
strcpy_s(num, nump); // 注意字符数组赋值方式
name = namep;
score = scor;
}
void Show()
{
cout << "学号:" << num << endl;
cout << "姓名:" << name << endl;
cout << "成绩:" << score << endl;
}
};
int main()
{
Student Geoge;
Geoge.setstudent("040120518", "George", 80);
Geoge.Show();
return 0;
}
在编写倒数第四行 Geoge.setstudent(“040120518”, “George”, 80); 的时候编译器显示这段代码错误,运行后显示为C2664错误,这个错误对我这个c++小白来说真的不知道该怎么办?书上给的代码就是这样的,怎么到了我这里就不对了呢,尝试根据现有知识进行改动,甚至将变量的类型改了,但感觉这就不符合题目想要我学的知识内涵了,觉得不妥,查找了多方资料后发现只要进行一个字修改即可,噗,我吐血了。
具体步骤:
一、标签页点击项目,下拉找到自己的项目名称
二、找到 C/C++ -> 语言 ->符合模式 ->将‘是’改为‘否’
如下图所示
改完之后对代码重新编译,发现 Geoge.setstudent(“040120518”, “George”, 80); 不再报错,代码顺利执行。