文字列の間にスペースの代入

文字列の間にスペースを代入する例題です。 ポインタの練習とでも考えて見てやって下さい。

文字列の間にスペースの代入(list_53.c)
/*-----------------------------------------------------------------
 * list_53.c:
 *           文字列の間にスペースの代入
 -----------------------------------------------------------------*/
#include <stdio.h>

//-----------------------------------------------------------------
char *strspace(char *s);
//-----------------------------------------------------------------

int main(void)
{
    char str[100];
    memset(str,0,sizeof(100));
    printf("文字列を入力してください。\n");
    scanf("%s",str);
    printf("結果:%s\n",strspace(str));
    return 0;
}

char *strspace(char *s)
{
    char *head,*ptr;
    int i=0,j;
    head = (char *)calloc(strlen(s)*2+1,sizeof(char));
    ptr = head; // ポインタに文字列の先頭アドレスを指定
    while(*s !='\0'){
        *(ptr++) = *(s++);
        *(ptr++) = ' ';
    }
    *ptr = '\0';
    return head;
}
Gami[82]% list_53.exe
文字列を入力してください。
murakami
結果:m u r a k a m i
Gami[83]%
inserted by FC2 system