# include < iostream >
#include < cstring >
using namespace std;
int main()
{ char b='p', a[5] ;
strcpy(a,b);
cout << a;
return 0;
}
Ce trebuie sa fac, unde e greseala ca sa imi mearga programul?
La build log apare: invalid conversion from char to const char *, aveti o idee cum ce inseamna asta??
Răspunsuri la întrebare
Răspuns de
0
Răspuns:
Al doilea parametru este un vector
Explicație:
Functia strcpy are urmatorul antet:
char * strcpy ( char * destination, const char * source );
source trebuie sa fie un VECTOR de caractere(foarte important: terminat cu '\0').
In programul tau, source este doar un caracter.
Poti sa incerci sa il apelezi asa:
strcpy(a, &b);
Dar trebuie sa te asiguri ca (&b)[1] = '\0'
paulb007:
Aa, deci ambii din functia strcpy trebuie sa fie vectori? Gen si destination, nu numai source, nu?
char * b = "p";
Te scapa de toate problemele pe care le ai in programul tau.
' ' inseamna ca trebuie tratat ca un singur caracter.
Diferenta dintre ele e de tip:
Cu " ", tipul este const char *
Cu ' ', tipul este const char
Dar poti sa incerci sa il declari pe b si asa:
char b[] = {'p', '\0'};
Alte întrebări interesante
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Latina,
8 ani în urmă
Limba română,
8 ani în urmă
Engleza,
9 ani în urmă
Franceza,
9 ani în urmă