Como iterar sobre uma string em C?
Agora eu estou tentando isso:
#include <stdio.h>
int main(int argc, char *argv[]) {
if (argc != 3) {
printf("Usage: %s %s sourcecode input", argv[0], argv[1]);
}
else {
char source[] = "This is an example.";
int i;
for (i = 0; i < sizeof(source); i++) {
printf("%c", source[i]);
}
}
getchar();
return 0;
}
Isso também NÃO funciona:
char *source = "This is an example.";
int i;
for (i = 0; i < strlen(source); i++){
printf("%c", source[i]);
}
Eu recebo o erro
Exceção não tratada em 0x5bf714cf (msvcr100d.dll) no Test.exe: 0xC0000005: Violação de acesso ao ler na posição 0x00000054.
(traduzido livremente do alemão)
Então, o que há de errado com o meu código?