fork download
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #include <string.h>
  4.  
  5. int main() {
  6.  
  7. int size=0;
  8. char str[]="Ola. Tudo bem?\n Sim e contigo?\n\n Comigo esta tudo bem! Que tens feito?\n Trabalho no projeto!\n";
  9.  
  10.  
  11. size = strlen(str);
  12. printf("%d\n",size);
  13.  
  14. int separadores = 0, i;
  15.  
  16. for (i=0; i < size; ++i){
  17. if (str[i] == '\n'){
  18. separadores++;
  19. }
  20. }
  21.  
  22. separadores++;
  23.  
  24. char **matriz = malloc(sizeof(char*)*separadores);
  25. int ultimo = 0, j=0;
  26.  
  27. for (i=0; i < size; ++i){
  28. if (str[i] == '\n' || i == (size-1)){
  29. if (i-ultimo > 1){
  30. matriz[j] = malloc(sizeof(char)*(i-ultimo));
  31. memcpy(matriz[j], str+ultimo, i-ultimo);
  32. matriz[j][i-ultimo]='\0';
  33. j++;
  34. }
  35. ultimo=i+1;
  36. }
  37. }
  38.  
  39.  
  40. for(i=0; i < j;++i){
  41. printf("%s\n",matriz[i]);
  42. }
  43.  
  44. return 0;
  45.  
  46. }
  47.  
Success #stdin #stdout 0s 10320KB
stdin
Standard input is empty
stdout
93
Ola. Tudo bem?
 Sim e contigo?
 Comigo esta tudo bem! Que tens feito?
 Trabalho no projeto!