[ Foro de C++ ]

colas c++ como insertar error en linea de codigo

28-Nov-2019 18:49
cesar gomez
2 Respuestas

Buen dia amigos espero su ayuda
El error en este programa esta en esta linea insertarcola( frente, fin, dato); al llamar a la funcion me queda este error 34 34 J:\Programacion Psaint\C++curso ats\v101colasinsertar.cpp Error invalid conversion from 'nodo' to 'int' -fpermissive
34 34 J:\Programacion Psaint\C++curso ats\v101colasinsertar.cpp Error too many arguments to function 'void insertarcola(nodo&, int)'

Puede alquien ayudarme


using namespace std;

struct nodo{
int dato;
nodo *siguiente;

};

void insertarcola(nodo *&,int);
bool cola_vacia(nodo *);
//void sacarpila(nodo *&,int&);


int main(){
  
  nodo *frente = NULL;
  nodo *fin = NULL;
  
  int dato;
  cout<<"digite un numero ";
  
  cin >> dato;
  insertarcola( frente, fin, dato);




getch();
return 0;


}

void insertarcola(nodo *&frente,nodo *&fin,int n ){
nodo *nuevo_nodo = new nodo();
nuevo_nodo->dato = n;
nuevo_nodo->siguiente = NULL;

if (cola_vacia(frente)){
frente = nuevo_nodo;
}
else{
fin->siguiente = nuevo_nodo;

}

fin = nuevo_nodo;

cout<<" elemento "<<n<< "  agregado sido agregado a cola correctamente\n";   
}

bool cola_vacia(nodo *frente){
return (frente==NULL)? true :  false;
}





30-Nov-2019 16:26
Nacho Cabanes (+52)

Los mensajes de error son tus amigos. Te dice que hay un error en la línea 34, columna 34. No sé si fiarme de la columna, porque aparecer mal tabulado, pero la línea 34 es ésta:

insertarcola( frente, fin, dato);

Y en la línea 20 tienes

void insertarcola(nodo *&,int);

Luego hay una discrepancia: tu prototipo habla de 2 parámetros pero en tu llamada pasas 3.

Has puesto la pregunta dos veces. Borro la anterior y conservo ésta.


02-Dec-2019 04:56
mercedes alfonzo

igual amigo no  corre
si esta la descrepancia como debo ponerlos ¿¿¿???
para que corra el programa gracias pero sigo en las mismas los errores me los da el programa  






Si ya eres usuario del sistema, puedes contestar desde tu cuenta y así ganar prestigio.

Si sólo eres un visitante, puedes optar por...