há um erro na instrução
 num_alunos–;
erro:
 error: stray '\223' in program
neste código:


#include <iostream>
#include <fstream>
#include <string>
using namespace std;

class Aluno {
public:
    string nome;
    int idade;
    float mediacurso;

    void setNome(string n) {
        nome = n;
    }

    void setIdade(int i) {
        idade = i;
    }

    void setMediaCurso(float m) {
        mediacurso = m;
    }

    string getNome() {
        return nome;
    }

    int getIdade() {
        return idade;
    }

    float getMediaCurso() {
        return mediacurso;
    }
};

int main() {
    Aluno alunos[100];
    int num_alunos = 5;
    char opcao;

    do {
        cout << “Escolha uma opção:” << endl;
        cout << “A - Instanciar a classe com 5 alunos e com valores à sua escolha.” << endl;
        cout << “B - Gravar num ficheiro os valores instanciados em A.” << endl;
        cout << “C - Ler os valores do ficheiro criados em B e instancia-os na estrutura de 1.” << endl;
        cout << “D - Imprimir na consola a lista de alunos instanciados.” << endl;
        cout << “E - Poder alterar os dados de um dado aluno, pesquisando pelo nome.” << endl;
        cout << “F - Poder acrescentar alunos à lista.” << endl;
        cout << “G - Calculo da média do conjunto de todos os alunos.” << endl;
        cout << “H - Poder eliminar os dados de um dado aluno, pesquisando pelo nome.” << endl;
        cout << “S - Sair do menu.” << endl;
        cin >> opcao;

        switch (opcao) {
            case ‘A’:
                for (int i = 0; i < num_alunos; i++) {
                    string nome;
                    int idade;
                    float media;

                    cout << "Insira o nome do aluno " << i + 1 << “: “;
                    cin >> nome;

                    cout << “Insira a idade do aluno " << i + 1 << “: “;
                    cin >> idade;

                    do {
                        cout << “Insira a média do aluno " << i + 1 << “: “;
                        cin >> media;
                    } while (media < 0 || media > 20);

                    alunos[i].setNome(nome);
                    alunos[i].setIdade(idade);
                    alunos[i].setMediaCurso(media);
                }
                break;

            case ‘B’: {
                ofstream myfile(“alunos.txt”);

                if (myfile.is_open()) {
                    for (int i = 0; i < num_alunos; i++) {
                        myfile << alunos[i].getNome() << “,” << alunos[i].getIdade() << “,” << alunos[i].getMediaCurso() << endl;
                    }

                    myfile.close();
                } else {
                    cout << “Não foi possível abrir o ficheiro.” << endl;
                }
                break;
            }

            case ‘C’: {
                ifstream myfile2(“alunos.txt”);

                if (myfile2.is_open()) {
                    string line;
                    num_alunos = 0;

                    for (int i = 0; getline(myfile2, line); i++) {
                        string nome = line.substr(0, line.find(”,”));
                        line.erase(0, line.find(”,”) + 1);

                        int idade = stoi(line.substr(0, line.find(”,”)));
                        line.erase(0, line.find(”,”) + 1);

                        float media = stof(line);

                        alunos[i].setNome(nome);
                        alunos[i].setIdade(idade);
                        alunos[i].setMediaCurso(media);

                        num_alunos++;
                    }

                    myfile2.close();
                } else {
                    cout << “Não foi possível abrir o ficheiro.” << endl;
                }
                break;
            }

            case ‘D’:
                for (int i = 0; i < num_alunos; i++) {
                    cout << alunos[i].getNome() << “\t” << alunos[i].getIdade() << “\t” << alunos[i].getMediaCurso() << endl;
                }
                break;

            case ‘E’: {
                string nome;
                cout << "Insira o nome do aluno a ser alterado: ";
                cin >> nome;
                bool found = false;

                for (int i = 0; i < num_alunos; i++) {
                    if (alunos[i].getNome() == nome) {
                        found = true;
                        string novo_nome;
                        int nova_idade;
                        float nova_media;

                        cout << "Insira o novo nome do aluno " << i + 1 << ": ";
                        cin >> novo_nome;
                        alunos[i].setNome(novo_nome);

                        cout << "Insira a nova idade do aluno " << i + 1 << ": ";
                        cin >> nova_idade;
                        alunos[i].setIdade(nova_idade);

                        do {
                            cout << "Insira a nova média do aluno " << i + 1 << ": ";
                            cin >> nova_media;
                        } while (nova_media < 0 || nova_media > 20);

                        alunos[i].setMediaCurso(nova_media);

                        cout << “Aluno atualizado com sucesso!” << endl;
                        break;
                    }
                }

                if (!found) {
                    cout << “Aluno não encontrado.” << endl;
                }
                break;
            }

            case ‘F’: {
                string nome;
                int idade;
                float media;

                cout << "Insira o nome do aluno a ser adicionado: ";
                cin >> nome;
                cout << "Insira a idade do aluno a ser adicionado: ";
                cin >> idade;

                do {
                    cout << "Insira a média do aluno a ser adicionado: ";
                    cin >> media;
                } while (media < 0 || media > 20);

                alunos[num_alunos].setNome(nome);
                alunos[num_alunos].setIdade(idade);
                alunos[num_alunos].setMediaCurso(media);

                num_alunos++;

                cout << “Aluno adicionado com sucesso!” << endl;
                break;
            }

            case ‘G’: {
                float soma_media = 0, media_total;

                for (int i = 0; i < num_alunos; i++) {
                    soma_media += alunos[i].getMediaCurso();
                }

                media_total = soma_media / num_alunos;

                cout << "A média do conjunto de todos os alunos é: " << media_total << endl;
                break;
            }

            case ‘H’: {
                string nome;
                cout << "Insira o nome do aluno a ser removido: ";
                cin >> nome;
                bool removed = false;

                for (int i = 0; i < num_alunos; i++) {
                    if (alunos[i].getNome() == nome) {
                        for (int j = i; j < num_alunos - 1; j++) {
                            alunos[j] = alunos[j + 1];
                        }

                        num_alunos–;

                        removed = true;
                        cout << “Aluno removido com sucesso!” << endl;
                        break;
                    }
                }

                if (!removed) {
                    cout << “Aluno não encontrado.” << endl;
                }
                break;
            }

            case ‘S’:
                break;

            default:
                cout << “Opção inválida.” << endl;
        }
    } while (opcao != ‘S’);

    return 0;
}