>  기사  >  백엔드 개발  >  C++ 코드에서 "오류: ',' 토큰 앞에 기본 표현식이 필요합니다" 문제 해결

C++ 코드에서 "오류: ',' 토큰 앞에 기본 표현식이 필요합니다" 문제 해결

WBOY
WBOY원래의
2023-08-27 09:49:522689검색

解决C++代码中出现的“error: expected primary-expression before ',' token”问题

C++ 코드에서 "오류: ',' 토큰 앞에 기본 표현식이 필요함" 문제를 해결하세요.

C++ 코드를 작성할 때 흔히 발생하는 컴파일 오류 중 하나는 "오류: 기본 표현식이 필요합니다."입니다. ',' 토큰 앞에." 이 오류 메시지는 쉼표 앞에 기본 표현식이 필요하지만 찾을 수 없음을 알려줍니다. 이 문서에서는 이 오류의 원인과 해결 방법을 설명합니다.

먼저 코드 예제를 살펴보겠습니다.

#include <iostream>

int main() {
    int a, b;
    int sum = a, b;  // 错误出现在这一行
    sum = a + b;

    std::cout << "The sum is: " << sum << std::endl;

    return 0;
}

이 예제에서는 두 개의 정수 변수 a와 b를 정의했고 그 합을 계산하려고 합니다. 그러나 이 예에서는 a와 b를 표현식의 일부로 처리하기 위해 쉼표 연산자를 잘못 사용했습니다.

C++에서는 쉼표 연산자를 두 가지 방법으로 사용할 수 있습니다. 하나는 int a, b, c;와 같이 여러 변수를 선언하고 초기화하는 데 사용됩니다. 여기서 쉼표는 여러 변수를 구분하는 역할을 합니다. 다른 하나는 여러 표현식을 함께 연결하고 마지막 표현식의 값을 반환할 수 있는 표현식용입니다. int a, b, c;,在这里逗号起到分隔多个变量的作用。另一种是用于表达式,它可以将多个表达式连接在一起,返回最后一个表达式的值。

在我们的错误代码中,int sum = a, b;

오류 코드에서 int sum = a, b;는 int 유형의 변수 sum을 선언하고 쉼표 연산자를 사용하여 a와 b를 연결하는 것으로 구문 분석됩니다. 쉼표 연산자의 우선 순위가 낮기 때문에 이 코드 줄의 실제 의미는 int 유형의 변수 합계를 선언하고 이를 a 값으로 초기화하는 것이며 쉼표는 b와 관련이 없습니다.

이 문제를 해결하려면 이 코드 줄을 올바른 형식으로 수정하면 됩니다. 즉, 쉼표 연산자를 더하기 연산자로 바꾸면 됩니다.

int sum = a + b;

수정된 코드는 다음과 같습니다.

#include <iostream>

int main() {
    int a, b;
    int sum = a + b;
    // int sum = a, b;  // 修改错误的代码
    // sum = a + b;

    std::cout << "The sum is: " << sum << std::endl;

    return 0;
}

수정된 코드에서 , 우리는 더하기 연산자를 사용하여 a와 b를 결합하여 그 합을 올바르게 계산했습니다.

위의 예 외에도 함수 호출이나 표현식의 구문 오류와 같은 다른 시나리오에서도 "오류: ',' 토큰 앞에 기본 표현식이 필요합니다."라는 오류가 나타날 수도 있습니다. 이러한 종류의 오류가 발생하면 코드를 한 줄씩 주의 깊게 확인하고 쉼표 연산자의 사용 시나리오에 주의하여 올바르게 사용되는지 확인해야 합니다.


요약:

C++ 코드를 작성할 때 "오류: ',' 토큰 앞에 기본 표현식이 필요합니다." 오류가 발생하면 쉼표 앞에 기본 표현식이 누락되었음을 의미합니다. 이 오류는 일반적으로 변수 초기화 또는 표현식 구성에 쉼표 연산자를 사용하는 등 쉼표 연산자를 잘못 사용하여 발생합니다. 이 문제를 해결하려면 코드에서 쉼표 연산자의 사용법을 확인하고 올바른 방식으로 사용되는지 확인해야 합니다. 🎜

위 내용은 C++ 코드에서 "오류: ',' 토큰 앞에 기본 표현식이 필요합니다" 문제 해결의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.