Error de C ++ se esperaba la expresión primaria antes de

Error de C ++ se esperaba la expresión primaria antes de

Mientras escribe un código, un programador puede encontrar algunas ambigüedades. Hay varios tipos de errores como errores lógicos, errores de tiempo de compilación o error de sintaxis. Los errores lógicos son difíciles de entender porque no muestra ningún error, mientras que la sintaxis y los errores de tiempo de compilación ni siquiera se ejecutan; Generan un error mientras se inicia la compilación del código.

Hoy, discutiremos sobre un error de sintaxis que puede ocurrir debido a algo que falta en el código o algo que se agrega al código. El error que vamos a discutir es la "expresión primaria esperada". Este error ocurre principalmente cuando falta una palabra clave. Para conocer este error, hay una palabra clave o carácter al final que muestra el motivo de la ocurrencia de error. Cuando la sintaxis no es seguida correctamente por el codificador, se ejecuta con éxito. Muestra el error que indica la línea donde se encuentra.

Las principales razones para la ocurrencia del error son:

  • Si el tipo de datos del argumento también se especifica con la variable, invoca un error.
  • Si el argumento aprobado es el tipo incorrecto, como cómo pasar una cadena a la función es un tipo incorrecto porque no podemos pasar una cadena a la función.
  • Si faltan los aparatos ortopédicos rizados o se agregan aparatos ortopédicos adicionales por error que genera el error.
  • También ocurre cuando el paréntesis en la declaración IF no tiene ninguna expresión o resultado.

Sintaxis:

Como discutimos en la introducción, este es un error y no un código que debe tener cualquier sintaxis especificada. La siguiente es la muestra de error de cómo se ve.

Error: expresión primaria esperada antes de 'elemento'

En el error anterior, "elemento" denota la palabra clave en la que falta o se agrega cualquier expresión. Una expresión puede ser un carácter, valor aritmético, aparatos ortopédicos o una expresión relacional.

Ejemplo 1:

Ahora, realizamos un ejemplo en el que realizamos una adición de dos variables en una función definida por el usuario y luego mostramos la suma de ambos valores. Incluyamos nuestros archivos de encabezado "iOStream" y "cadena". IOSTream se usa para habilitar el compilador para usar las operaciones de E/S incorporadas que proporcionan donde la cadena nos permite trabajar con la colección de caracteres. A continuación, declaramos una función definida por el usuario llamada "myFunct ()" a la que pasamos dos argumentos para las variables que se calculan. Dentro de esta función, declaramos una variable con nombre de adición que es responsable de mantener la suma de "var1" y "var2 variables.

Ahora, dirigiéndose a la función principal donde definimos el "resultado" del valor entero al que asignamos el método myFunct () pasando dos valores enteros, "20" y "30". Después de eso, ejecutamos el valor de retorno de la función que se almacena en la variable "Resultado" utilizando la instrucción CoUT que proporciona la biblioteca IOSTream.

#incluir
#incluir
usando el espacio de nombres STD;
int myFunct (int var1, int var2)

int adición;
adición = var1 + var2;
regresar adición;

int main ()

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

Después de la ejecución del código, encontramos dos errores en la línea 12 que indica un problema con el elemento "INT", lo que significa que no podemos pasar el tipo de datos junto con el nombre de la variable como argumento a la función. Los argumentos siempre se pasan sin el tipo de datos a la llamada de función. Ahora, eliminamos el error eliminando los tipos de datos que le pasamos y luego reexpresamos el código.

Después de la re-ejecución, mostramos con éxito el valor de retorno de la adición, como podemos ver en la siguiente captura de pantalla:

Ejemplo 2:

Ahora, intentamos otro ejemplo en el que calculamos la longitud de la palabra, calculamos su permutación y la mostramos. Después de incluir los archivos de encabezado, declaramos las tres funciones. La función getData () que obtiene una cadena del usuario. Dentro de este método, declaramos una variable de cadena, "palabra". Usando la instrucción "Cin", obtenemos la cadena del usuario y devolvemos su valor. La segunda función es la "longitud_count ()" que calcula la longitud de la cadena usando la longitud del método () y devuelve su valor. La tercera función es "myFunc ()" que verifica si la longitud de la cadena es mayor que "1". Luego, calcula la permutación y la devuelve de otra manera. Simplemente devuelve la longitud de la cadena.

Por fin, nos movemos a la función principal donde declaramos una variable de cadena llamada "palabra" a la que asignamos la llamada de función de getData (). Esto significa que los datos que hemos tomado del usuario se asignan a la variable de "palabra" y crean otra variable que es "longitud de palabra" a la que asignamos la llamada de función de longitud_count () donde pasamos la variable de "palabra" con su tipo de datos de "cadena". Por fin, utilizando la instrucción Cout, mostramos el resultado de la permutación de la cadena que hemos tomado del usuario y ejecutamos el código.

#incluir
#incluir
usando el espacio de nombres STD;
cadena getData ();
int long_count (palabra de cadena);
int myfunc (int wordlength);
String getData ()

palabra de cadena;
cout << "Please enter a word: ";
cin >> palabra;
Palabra de regreso;

int long_count (palabra de cadena)

int wordlength;
WordLength = Word.longitud();
devolver Word Length;

int myfunc (int wordlength)

if (wordlength == 1)

devolver Word Length;

demás

return WordLength * myFunc (WordLength - 1);


int main ()

String word = getData ();
int wordLength = longitud_count (palabra de cadena);
cout << word << " has " << myfunc(wordLength) << " permutations." << endl;
regresar 0;

Después de la ejecución, obtenemos este error que muestra que cometimos un error en la línea 43. Pasamos el tipo de datos a la función junto con la variable. Como sabemos, no podemos pasar el tipo de datos a la variable. Ahora, intentamos resolver este error eliminando el tipo de datos de la llamada de función y ejecutarlo nuevamente.

Después de ejecutar el código nuevamente, mostramos con éxito el mensaje para tener el valor del usuario cuando ingresamos la cadena "JS". Después de eso, la permutación del código se muestra como se muestra en lo siguiente:

Conclusión

En este artículo, estudiamos el tipo de error que se puede encontrar al escribir el código. A veces, el codificador puede perder algo o él/ella puede agregar una expresión o declarar una sintaxis incorrecta para las funciones o declaraciones por error. Al usar la revisión detallada e implementar los ejemplos, describimos brevemente el error y la razón por la cual se puede encontrar este error. También discutimos la metodología para resolver estos errores. Esperamos que este artículo sea útil para que usted resuelva este tipo de errores.