Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Selesaikan masalah "ralat: jangkaan-ungkapan utama sebelum token ','" dalam kod C++

Selesaikan masalah "ralat: jangkaan-ungkapan utama sebelum token ','" dalam kod C++

WBOY
WBOYasal
2023-08-27 09:49:522621semak imbas

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

Solve "Ralat: Ekspresi utama yang dijangkakan sebelum ',' token" masalah dalam kod C ++ apabila menulis kod C ++, anda kadang-kadang menghadapi beberapa kesilapan kompilasi. sebelum ',' token". Mesej ralat ini memberitahu kami bahawa kami memerlukan ungkapan utama sebelum koma, tetapi ia tidak ditemui. Artikel ini menerangkan punca ralat ini dan cara membetulkannya.

Mula-mula, mari lihat contoh kod:

#include <iostream>

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

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

    return 0;
}

Dalam contoh ini, kami telah menentukan dua pembolehubah integer a dan b, dan ingin mengira jumlahnya. Walau bagaimanapun, dalam contoh ini, kami menggunakan operator koma secara salah untuk merawat a dan b sebagai sebahagian daripada ungkapan.

Pengendali koma boleh digunakan dalam dua cara dalam C++. Satu digunakan untuk mengisytiharkan dan memulakan berbilang pembolehubah, seperti int a, b, c;, di mana koma memainkan peranan untuk memisahkan berbilang pembolehubah. Satu lagi adalah untuk ungkapan, yang boleh menyambungkan berbilang ungkapan bersama-sama dan mengembalikan nilai ungkapan terakhir.

Dalam kod ralat kami, int sum = a, b; dihuraikan sebagai mengisytiharkan jumlah berubah jenis int dan menggunakan operator koma untuk menyambungkan a dan b. Memandangkan pengendali koma mempunyai keutamaan yang lebih rendah, maksud sebenar baris kod ini adalah untuk mengisytiharkan jumlah pembolehubah jenis int dan memulakannya kepada nilai a, dan koma tidak mempunyai kaitan dengan b. int a, b, c;,在这里逗号起到分隔多个变量的作用。另一种是用于表达式,它可以将多个表达式连接在一起,返回最后一个表达式的值。

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

Untuk menyelesaikan masalah ini, kita hanya perlu mengubah suai baris kod ini ke dalam bentuk yang betul, iaitu gantikan operator koma dengan operator tambah:

int sum = a + b;

Kod yang diubah suai adalah seperti berikut:

#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;
}

Dalam kod yang diubah suai , Kami menggunakan operator tambah untuk menggabungkan a dan b bersama-sama, mengira jumlahnya dengan betul.

Selain contoh di atas, ralat "ralat: jangkaan ungkapan utama sebelum ',' token" mungkin juga muncul dalam senario lain, seperti panggilan fungsi atau ralat sintaks dalam ungkapan. Apabila menghadapi ralat seperti ini, kita harus menyemak dengan teliti kod baris demi baris dan memberi perhatian kepada senario penggunaan pengendali koma untuk memastikan ia digunakan dengan betul.

Ringkasan:

Apabila menulis kod C++, apabila anda menghadapi ralat "ralat: jangkaan-ungkapan utama sebelum token ','", ini bermakna ungkapan utama tiada sebelum koma. Ralat ini biasanya disebabkan oleh penggunaan operator koma yang salah, seperti menggunakan operator koma untuk permulaan pembolehubah atau komposisi ungkapan. Untuk menyelesaikan masalah ini, kita perlu menyemak penggunaan operator koma dalam kod dan pastikan ia digunakan dengan cara yang betul.

Atas ialah kandungan terperinci Selesaikan masalah "ralat: jangkaan-ungkapan utama sebelum token ','" dalam kod C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn