Bagaimana untuk menyelesaikan ralat sintaks C++: 'ungkapan utama yang dijangkakan sebelum token '*'?

WBOY
Lepaskan: 2023-08-25 19:16:46
asal
3631 orang telah melayarinya

如何解决C++语法错误:'expected primary-expression before '*' token'?

Cara menyelesaikan ralat sintaks C++: 'ungkapan utama yang dijangkakan sebelum token '*'

Dalam proses pembelajaran pengaturcaraan C++, kita sering menghadapi pelbagai ralat sintaks. Salah satu ralat biasa ialah 'ungkapan utama yang dijangkakan sebelum token '*'. Ralat ini biasanya berlaku apabila menggunakan penunjuk, terutamanya kerana kami menggunakan sintaks yang salah di suatu tempat atau terlupa menggunakan sintaks yang betul. Beberapa punca dan penyelesaian ralat biasa diperkenalkan di bawah.

  1. Terlupa untuk mengisytiharkan pembolehubah penunjuk sebelum menggunakan penunjuk:
    Sebelum menggunakan penunjuk, kita perlu mengisytiharkan pembolehubah penunjuk terlebih dahulu. Jika kita terlupa untuk mengisytiharkan pembolehubah penunjuk dan menggunakan penunjuk secara terus, ralat 'ungkapan utama yang dijangka sebelum token '*' akan berlaku. Berikut adalah contoh:
int *ptr; // 正确的声明指针变量
*ptr = 5; // 错误的使用指针
Salin selepas log masuk

Penyelesaian adalah untuk mengisytiharkan pembolehubah penunjuk sebelum menggunakannya seperti ini:

int *ptr; // 声明指针变量
ptr = new int; // 分配内存
*ptr = 5; // 使用指针
delete ptr; // 释放内存
Salin selepas log masuk
  1. Penempatan asterisk yang salah:
    Dalam C++, kami menggunakan asterisk untuk mewakili penunjuk, tetapi jika bintang Kedudukan yang salah daripada nombor itu juga akan menyebabkan ralat 'ungkapan utama yang dijangkakan sebelum token '*'. Berikut adalah contoh:
int *ptr = new int;
*ptr = 5; // 正确的使用指针

int* ptr = new int;
* ptr = 5; // 错误的使用指针,星号的位置错误
Salin selepas log masuk

Penyelesaiannya ialah meletakkan asterisk selepas nama pembolehubah seperti ini:

int *ptr = new int;
*ptr = 5; // 正确的使用指针
Salin selepas log masuk
  1. Ralat sintaks:
    Kadang-kadang, ralat 'ungkapan utama yang dijangkakan sebelum token '*' mungkin juga disebabkan oleh ralat sintaks yang lain. Contohnya, koma bertitik hilang, kurungan tidak sepadan, dsb. Berikut ialah contoh:
int *ptr = new int
*ptr = 5;
Salin selepas log masuk

Penyelesaian adalah untuk menyemak ralat sintaks lain dalam kod dan membetulkannya seperti berikut:

int *ptr = new int;
*ptr = 5;
Salin selepas log masuk

Apabila menyelesaikan ralat sintaks, kita harus menyemak kod dengan teliti dan memahami ciri-ciri sintaks dan peraturan C++. Kami juga boleh menggunakan IDE (Persekitaran Pembangunan Bersepadu) untuk membantu kami mencari dan menyelesaikan ralat sintaks. IDE biasanya memberikan petua dan cadangan apabila kami memasukkan kod untuk membantu kami mengelakkan beberapa kesilapan biasa.

Untuk meringkaskan, apabila kita menghadapi ralat sintaks C++: 'ungkapan utama yang dijangkakan sebelum token '*', kita harus terlebih dahulu menyemak sama ada kita terlupa untuk mengisytiharkan pembolehubah penunjuk, sama ada kedudukan asterisk adalah betul dan sama ada ralat sintaks lain wujud. Dengan menyemak dan membetulkan kod dengan teliti, kami berjaya menyelesaikan ralat ini dan meneruskan pengaturcaraan C++ dengan lancar.

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan ralat sintaks C++: 'ungkapan utama yang dijangkakan sebelum token '*'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan