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

Selesaikan masalah "ralat: jangkaan primer-ungkapan sebelum token ')' dalam kod C++

王林
王林asal
2023-08-27 12:28:522949semak imbas

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

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

Dalam pengaturcaraan C++, kadangkala kita menghadapi beberapa mesej ralat, seperti "ungkapan utama yang dijangka sebelum token ')'". Ralat ini biasanya disebabkan oleh sintaks atau ungkapan yang salah digunakan dalam kod, menyebabkan pengkompil gagal memahami maksud kod. Artikel ini akan memperkenalkan beberapa situasi biasa di mana ralat ini berlaku dan menyediakan penyelesaian yang sepadan.

Situasi 1: Ralat panggilan fungsi
Dalam C++, kita biasanya menggunakan kurungan untuk memanggil fungsi, tetapi kadangkala kita terlupa untuk menambah kurungan selepas nama fungsi. Contohnya:

cout << "Hello, World!" << endl;

Baris kod ini hendaklah ditulis sebagai:

cout << "Hello, World!" << endl;

Penyelesaiannya ialah menambah kurungan selepas nama fungsi.

Senario 2: Fail pengepala atau ruang nama tiada
Dalam C++, kita perlu menggunakan fail pengepala atau ruang nama untuk memperkenalkan beberapa fungsi atau kelas perpustakaan standard. Jika kita terlupa untuk memasukkan fail pengepala atau ruang nama yang sepadan, pengkompil akan melaporkan ralat. Contohnya:

vector<int> numbers;

Barisan kod ini hendaklah ditulis sebagai:

#include 
using namespace std;

vector<int> numbers;

Penyelesaiannya adalah dengan memperkenalkan fail pengepala atau ruang nama yang sepadan mengikut keperluan kod.

Kes 3: Ralat sintaks
Ralat sintaks ialah salah satu ralat yang paling biasa dalam program C++. Dalam sesetengah kes, kami mungkin membuat beberapa kesilapan dalam sintaks yang menyebabkan pengkompil tidak menghuraikan kod dengan betul. Contohnya:

int sum = add(a b);

Barisan kod ini hendaklah ditulis sebagai:

int sum = add(a, b);

Penyelesaian adalah untuk menyemak kod untuk ralat sintaks dan membetulkannya jika perlu.

Kes 4: Tiada koma bertitik
Dalam C++, setiap baris kod hendaklah berakhir dengan koma bertitik. Jika kita terlupa untuk menambah koma bertitik di hujung kod, pengkompil akan mengadu. Contohnya:

int a = 10
int b = 20;

Kod ini hendaklah ditulis sebagai:

int a = 10;
int b = 20;

Penyelesaiannya ialah menambah koma bertitik di hujung kod.

Kes 5: Operator hilang
C++ ialah bahasa yang ditaip kuat, yang memerlukan kami menggunakan operator yang betul semasa menjalankan operasi. Jika kita terlupa untuk menambah operator pada kod kita, pengkompil akan membuang ralat. Contohnya:

int sum = a + b

Barisan kod ini hendaklah ditulis sebagai:

int sum = a + b;

Penyelesaiannya adalah dengan menambah operator yang betul pada kod.

Melalui contoh situasi biasa di atas, kita dapat melihat bahawa cara untuk menyelesaikan ralat ini biasanya dengan menyemak ralat sintaks dalam kod dan membuat pengubahsuaian yang sesuai. Sudah tentu, terdapat situasi lain yang mungkin menyebabkan ralat ini, yang perlu dianalisis dan diselesaikan berdasarkan kod tertentu.

Ringkasan:
Dalam pengaturcaraan C++, apabila anda menghadapi ralat "error: expected primary-expression before ')' token", anda perlu memberi perhatian kepada aspek berikut:

  1. Semak sama ada panggilan fungsi itu betul dan sama ada anda telah melupakan tanda kurungan.
  2. Semak sama ada terdapat fail pengepala atau import ruang nama yang hilang.
  3. Semak kesilapan tatabahasa, seperti tiada koma, koma bernoktah, dsb.
  4. Semak operator yang hilang.

Melalui kaedah di atas, kami boleh menyelesaikan ralat jenis ini dengan lebih baik dan seterusnya mempelajari serta meningkatkan kebolehan kami dalam pengaturcaraan C++.

Atas ialah kandungan terperinci Selesaikan masalah "ralat: jangkaan primer-ungkapan 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