Problema nella dichiarazione del vettore stringa

di il
4 risposte

Problema nella dichiarazione del vettore stringa

Salve a tutti, ho appena fatto un programma in cui copio una stringa usando la notazione dei vettori e quella dei puntatori. Ecco il programma:
 #define CRT_SECURE_NO_WARNINGS
#include<stdio.h>

void copy1(char *s1, const char *s2);
void copy2(char *s1, const char *s2);

int main() {

	char string1 = [ 10 ];
	char *string2 = "Hello";
	char string3 = [10];
	char string4[] = "Good Bye";

	copy1(string1, string2);
	printf("string1 = %s\n", string1);

	copy2(string3, string4);
	printf("string3 = %s\n", string3);


	return 0;


}

void copy1(char *s1, const char *s2) {

	int i;

	for (i = 0; (s1[i] = s2[i]) != '\0'; i++) {
		;
	}
}

void copy2(char *s1, const char *s2) {

	for (; (*s1 = *s2) != '\0'; s1++, s2++) {
		;
	}

}

Non capisco perchè in queste entrambe righe di codice mi viene errore con scritto: (prevista un espressione):
char string1 = [ 10 ];
char string3 = [10];
Qualcuno ha capito il perchè? In teoria il programma dovrebbe già funzionare..

4 Risposte

Devi accedere o registrarti per scrivere nel forum
4 risposte