fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int myStrlen(char s[]){
  5. int i;
  6. for(i=0;s[i]!='\0';i++);
  7. return i;
  8. }
  9.  
  10. int main(){
  11. int i, size;
  12.  
  13. //tがバッファー、sに動的確保する
  14. char *s;
  15. char t[1024];
  16.  
  17. scanf("%s",t);
  18.  
  19. //tに入力して文字数を数える
  20. size = myStrlen(t);
  21.  
  22. //intの時と同じように動的確保する
  23. //※大きさだけ注意、「+1」は終端文字の分
  24. s = (char *)malloc(sizeof(char)*(size+1));
  25.  
  26. if(s == NULL){
  27. printf("ERROR\n");
  28. return 0;
  29. }
  30.  
  31. //sのほうにtと終端文字を代入
  32. for(i=0;i<size;i++){
  33. s[i] = t[i];
  34. }
  35.  
  36. s[size] = '\0';
  37. printf("%d : %s",size,s);
  38.  
  39. free(s); //freeを忘れない
  40.  
  41. return 0;
  42. }
  43.  
Success #stdin #stdout 0s 5276KB
stdin
abcde
stdout
5 : abcde