Error: invalid conversion from ‘char’ to ‘const char* NON NE ESCO

di il
5 risposte

Error: invalid conversion from ‘char’ to ‘const char* NON NE ESCO

Ciao a tutti sono nuovo ed anche un po a corto di soluzoni, bentrovati spero mi possiate aiutare.

Ho questo codice che in compilazione mi da errore: 

main.cpp: In function ‘void scegliargomento(char*, char*, char*, int*, int&)’:
main.cpp:37:35: error: invalid conversion from ‘char’ to ‘const char*’ [-fpermissive]
   37 |             if (strcmp(argomento[i],arg)==0){

non riesco a capirne il motivo… questo il codice… GRAZIEEEEEEEEEEEEEE

using namespace std;
#include <string.h>

void caricaDati(char libri[], char autore[], char argomento[], int prezzo[], int &N)
{
 while(N <= 0){
	cout <<"inserisci numero elementi"<< N << endl;
 }
	
 for(int i=0; i<N; i++){
    std::cout <<"inserisci libro: "<< libri[i]<<std::endl;
    std::cout <<"inserisci autore: "<< autore[i]<<std::endl;
    std::cout <<"inserisci argomento: "<< argomento[i]<<std::endl;
    std::cout <<"inserisci prezzo: " << prezzo[i]<<std::endl;
 }
}

void scegliargomento (char libri[], char autore[], char argomento[], int prezzo[], int &N){
    char arg[]= "";
    int prezzomin=0;
    int prezzomax=0;
    int cont=0;
    //while(strcmp(arg,' ')==0){
	//    cout <<"scegli argomento"<<arg<<  endl;
	   // cin(arg);
    //}
	for(int i=0; i<N; i++){
	    if (strcmp(argomento[i],arg)==0){
	        if (cont==0) {
	            prezzomax=prezzo[i];
	            prezzomin=prezzo[i];
	            cont++;
	        }
	       if (prezzo[i] > prezzomax)  prezzomax=prezzo[i];
	       if (prezzo[i] < prezzomin)  prezzomin=prezzo[i];
	    }
	}
	cout <<"il prezzo piu' basso e': "<< prezzomin << endl;
	cout <<"il prezzo piu' alto e': "<< prezzomax << endl;
 }
 

int main()
{
    int N=0;
    char libri[N];
    char autore[N];
    char argomento[N];
    int prezzo[N];
    //libro con prezzo minore e massimo dato un argomento in input 
    caricaDati (libri,autore,argomento,prezzo, N);
    scegliargomento(libri,autore,argomento,prezzo, N);
    return 0;
} 

5 Risposte

Devi accedere o registrarti per scrivere nel forum
5 risposte