Originariamente inviato da gianvituzzi
Salve,

ho visto che in c++ sembra non esistere il concetto di stringhe, quindi bisogna sempre dare una dimensione alle variabili char quando si definiscono, allora mi chiedo: che differenza c'è tra:

codice:
char k[20] = "Hello World!";
e

codice:
char * k = "Hello World!";
non mi converrebbe usare sempre quest'ultimo tipo di assegnazione?
Prova il seguente, e tutto ti sarà più chiaro:
codice:
#include <iostream>

int main (void){
	const char a [] = "Hello World!";
	const char * b = "Hello World!";
	std::cout << sizeof (a) << std::endl;
	std::cout << sizeof (b) << std::endl;
	return 0;
}
;-)