안녕 얘들 아, 나는 학생의 평점을 계산하는 프로그램을 작성하려고합니다. 어떤 이유로 컴파일러에서 두 문자열을 비교할 때 오류가 발생하지만 그 이유를 찾을 수없는 것 같습니다. 아래에 오류가 발생하는 코드 조각이 있습니다. 누군가가 알아낼 수 있다면 정말 감사 할 것입니다.C++에서 문자와 문자열 비교
ERROR : 인수 '1' 'INT의 strncmp (CONST의 char *, const를 숯불 *, size_t로)'당신이 할
double StudentInfo::getGPA() {
double temp = 0;
for(int i = 0; i < totalCourses; i++) {
if(strncmp(Courses[i].getGrade(), "A") == 0) //Gets string "grade", and compares it to "A".
temp = temp + 4;
if(strncmp(Courses[i].getGrade(),"A-", 2) == 0)
temp = temp + 3.7;
if(strncmp(Courses[i].getGrade(), "B+", 2) == 0)
temp = temp + 3.3;
if(strncmp(Courses[i].getGrade(), "B") == 0)
temp = temp + 3;
if(strncmp(Courses[i].getGrade(), "B-", 2) == 0)
temp = temp + 2.7;
if(strncmp(Courses[i].getGrade(), "C+", 2) == 0)
temp = temp + 2.3;
if(strncmp(Courses[i].getGrade(), "C") == 0)
temp = temp + 2;
if(strncmp(Courses[i].getGrade(), "C-") == 0)
temp = temp + 1.7;
if(strncmp(Courses[i].getGrade(), "D+") == 0)
temp = temp + 1.3;
if(strncmp(Courses[i].getGrade(), "D") == 0)
temp = temp + 1;
else
temp = temp + 0;
}
GPA = temp/totalCourses;
return GPA;}
하지 않도록하기 위해
getGrage()
기능을 다시 것이라고합니다 (을 제공 길이를 비교할 때) –