ERRO C ++ Expressão primária esperada antes

ERRO C ++ Expressão primária esperada antes

Ao escrever um código, um programador pode encontrar algumas ambiguidades. Existem vários tipos de erros, como erros lógicos, erros de compilação no tempo ou erro de sintaxe. Erros lógicos são difíceis de entender porque não mostra nenhum erro enquanto a sintaxe e os erros de compilação do tempo nem sequer são executados; Eles geram um erro enquanto a compilação do código inicia.

Hoje, discutiremos sobre um erro de sintaxe que pode ocorrer devido a algo faltando no código ou algo que é adicionado ao código. O erro que vamos discutir é "expressão primária esperada". Este erro ocorre principalmente quando há alguma palavra -chave ausente. Para conhecer esse erro, há uma palavra -chave ou personagem no final que mostra o motivo da ocorrência de erros. Quando a sintaxe não é seguida corretamente pelo codificador, ele é executado com sucesso. Ele exibe o erro que indica a linha onde é encontrada.

As principais razões para a ocorrência do erro são:

  • Se o tipo de dados do argumento também for especificado com a variável, ele invoca um erro.
  • Se o argumento aprovado for do tipo errado, como passar uma string para a função é um tipo errado, porque não podemos passar uma string para a função.
  • Se os aparelhos encaracolados estiverem ausentes ou aparecem aparelhos extras por engano, o que gera o erro.
  • Também ocorre quando a parêntese na declaração IF não tem nenhuma expressão ou resultado.

Sintaxe:

Como discutimos na introdução, este é um erro e não um pedaço de código que deve ter qualquer sintaxe especificada. A seguir é a amostra de erro de como é.

Erro: expressão primária esperada antes do 'elemento'

No erro anterior, "elemento" indica a palavra -chave na qual qualquer expressão está faltando ou adicionada. Uma expressão pode ser um personagem, valor aritmético, aparelho ou expressão relacional.

Exemplo 1:

Agora, realizamos um exemplo no qual realizamos uma adição de duas variáveis ​​em uma função definida pelo usuário e depois exibimos a soma de ambos os valores. Vamos incluir os arquivos de cabeçalho “iostream” e “string”. O iostream é usado para permitir que o compilador use as operações de E/S embutidas que são fornecidas por ele, onde a string nos permite trabalhar com a coleção de caracteres. Em seguida, declaramos uma função definida pelo usuário chamada "myfunct ()" para a qual passamos dois argumentos para as variáveis ​​que são calculadas. Dentro desta função, declaramos uma variável chamada adição responsável por manter a soma de "var1" e "variáveis ​​var2.

Agora, indo para a função principal, onde definimos o valor inteiro "resultado" ao qual atribuímos o método myfunct () passando dois valores inteiros, "20" e "30". Depois disso, executamos o valor de retorno da função que é armazenada na variável "resultado" usando a instrução Cout que é fornecida pela biblioteca iostream.

#incluir
#incluir
usando namespace std;
int myfunct (int var1, int var2)

ad adição;
adição = var1 + var2;
adição de retorno;

int main ()

int resultado = myfunct (20, 30);
std :: cout << "addition of var1 and var2 is:"<< result << std::endl;

Após a execução do código, encontramos dois erros na linha 12, o que indica um problema com o elemento "int", o que significa que não podemos passar o tipo de dados junto com o nome da variável como um argumento para a função. Os argumentos são sempre passados ​​sem o tipo de dados para a chamada de função. Agora, removemos o erro eliminando os tipos de dados que passamos para ele e depois reexectamos o código.

Após a reexecução, exibimos com sucesso o valor de retorno da adição, como podemos ver na captura de tela a seguir:

Exemplo 2:

Agora, tentamos outro exemplo em que calculamos o comprimento da palavra, calculamos sua permutação e a exibimos. Depois de incluir os arquivos do cabeçalho, declaramos as três funções. A função getData () que recebe uma string do usuário. Dentro deste método, declaramos uma variável de string, "palavra". Usando a instrução "CIN", recebemos a string do usuário e retornamos seu valor. A segunda função é o "comprimento_count ()", que calcula o comprimento da string usando o comprimento do método () e retorna seu valor. A terceira função é "myfunc ()", que verifica se o comprimento da string é maior que "1". Em seguida, calcula a permutação e a devolve de outra forma. Simplesmente retorna o comprimento da corda.

Por fim, passamos para a função principal, onde declaramos uma variável de string chamada "palavra" à qual atribuímos a chamada de função do getData (). Isso significa que os dados que retiramos do usuário são atribuídos à variável "Word" e criando outra variável que é "WordLength" à qual atribuímos a chamada de função do comprimento_count () onde passamos a variável "palavra" junto com seu tipo de dados "string". Por fim, usando a instrução Cout, exibimos o resultado da permutação da string que tiramos do usuário e executamos o código.

#incluir
#incluir
usando namespace std;
string getData ();
int length_count (string word);
int myfunc (int wordLength);
String getData ()

string word;
cout << "Please enter a word: ";
CIN >> palavra;
palavra de retorno;

int length_count (string word)

Int WordLength;
WordLength = Word.comprimento();
Retornar WordLength;

int myfunc (int wordlength)

if (wordLength == 1)

Retornar WordLength;

outro

Retornar WordLength * myfunc (WordLength - 1);


int main ()

string word = getData ();
int wordLength = length_count (string word);
cout << word << " has " << myfunc(wordLength) << " permutations." << endl;
retornar 0;

Após a execução, recebemos esse erro que exibe que cometemos um erro na linha 43. Passamos o tipo de dados para a função junto com a variável. Como sabemos, não podemos passar o tipo de dados para a variável. Agora, tentamos resolver este erro removendo o tipo de dados da chamada de função e executá -lo novamente.

Depois de executar o código novamente, exibimos a mensagem com sucesso para ter o valor do usuário ao entrar na sequência "js". Depois disso, a permutação do código é exibida como mostrado no seguinte:

Conclusão

Neste artigo, estudamos o tipo de erro que pode ser encontrado ao escrever o código. Às vezes, o codificador pode perder algo ou pode adicionar uma expressão ou declarar uma sintaxe errada para as funções ou declarações por engano. Ao usar a revisão detalhada e implementar os exemplos, descrevemos brevemente o erro e o motivo pelo qual esse erro pode ser encontrado. Também discutimos a metodologia para resolver esses erros. Esperamos que este artigo seja útil para você resolver esses tipos de erros.