C++出现错误类型error C2664的解决方案
·
最近在学习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); 不再报错,代码顺利执行。

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐




所有评论(0)