gRoOvE 0 Denunciar post Postado Agosto 23, 2008 como que pode isso, se to alocando 5 letras, posso por a qtd q eu quiser ali q funciona igual? #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char *p; p = (char*)malloc(5); strcpy(p,"DEMONIO DO INFERNO"); printf("%s\n",p); p = (char*)realloc(p,25); strcpy(p,"VAI TOMAR NO **"); printf("%s\n",p); free(p); return 0; } Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Agosto 24, 2008 BUGS If the destination string of a strcpy() is not large enough (that is, if the programmer was stupid or lazy, and failed to check the size before copying) then anything might happen. Overflowing fixed length strings is a favorite cracker technique. http://www.htsoft.com/resources/articles/techtip_buffer.php #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { char *p=(char*)malloc(5); char s[10]; strcpy(p,"MAIS DO QUE CINCO"); for(int i=0;i<=sizeof(p)*4;i++) printf("%c\n",p[i]); } Tente dar um free em P. Não sei no teu ambiente mas aqui da erro na libc Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Agosto 24, 2008 da erro "debug library", que maravilha ein, por isso dizem que C é tão bom, você tem que fazer tudo Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Agosto 24, 2008 Por isso que ninguém gosta de C: a preguiça impera. Compartilhar este post Link para o post Compartilhar em outros sites
gRoOvE 0 Denunciar post Postado Agosto 24, 2008 acho que não é preguiça e sim ter q fazer tudo na mão coisas que são facilmente são feitas por outras linguagens... Compartilhar este post Link para o post Compartilhar em outros sites
_Isis_ 202 Denunciar post Postado Agosto 25, 2008 Exatamente: preguiça. Já vi o namorado...A gente tem que escrever um código com sincronização entre processos e passagem de dados via pipe e outras coisas. Ele tá tão viciado em Python e C# que não tá sabendo nem ler C. Compartilhar este post Link para o post Compartilhar em outros sites