Flavio Dusse Postado Outubro 15, 2008 Denunciar Share Postado Outubro 15, 2008 (editado) Pessoal como faço para mudar um caracter de uma string de um array por outroo codigo abaixo dá erro de execução !!int main(int argc, char *argv[]) { char *d[] = {"aaaa","bbbb","cccc"}; cout << d[2] << endl; //IMPRIME cccc d[2][2] = 'x'; cout << d[2] << endl; // ERA PARA IMPRIMIR ccxc MAS DA ERRO DE EXECUÇÃO }GratoDusse Editado Outubro 17, 2008 por kuroi Adicionar tag CODE Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 kuroi Postado Outubro 17, 2008 Denunciar Share Postado Outubro 17, 2008 então flavio, acontece q a não ser q o espaco esteja alocado dinamicamente ele não consegue alterar o valor mesmo.so q eu tb nunca consegui alocar o espaco no array. o q eu faria seria declarar uma otra variavel e aloca o espaco nela. ai eu copio de um lugar pra otro, tipo assim:int main(int argc, char *argv[]){ char *d[] = {"aaaa","bbbb","cccc"}; cout << d[2] << endl; //IMPRIME cccc char *a = (char*)malloc(sizeof(char) * 4); //Alocando um espaco pra caber 4 caracteres, pode por o valor q quiser strcpy(a, d[2]); //Copia do array pra variavel, com a funcao strcpy() do iostream a[2] = 'x'; //Altera na variavel, a posicao 2 d[2] = a; //Entenda q aqui você faz o d[2] apontar pro endereco de a. É bom dar um delete depois. cout << d[2] << endl; //IMPRIME ccxc}[/code]veja ai se funciona, qualquer coisa poste. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Flavio Dusse
Pessoal como faço para mudar um caracter de uma string de um array por outro
o codigo abaixo dá erro de execução !!
Grato
Dusse
Editado por kuroiAdicionar tag CODE
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.