C 比较莽 大神看看就好

#include "stdio.h"
#include "string.h"

typedef struct Link{
    struct Link *next;
    char *Pdata;
    int leng;
}link;

int main(void)
{
    char str[1000]={0};
    char Pstr[9]={0};
    link Firt={0};
    link *NOW=&Firt;
    link *Pnext=&Firt;
    int count=0;
    char *p=NULL;
    while(scanf("%s\n",str)!=-1)
    {
        if(NOW->leng!=0)
        {
            Pnext=(link *)malloc(sizeof(link));
            NOW->next=Pnext;
        }
        NOW=Pnext;
        NOW->next=NULL;
        NOW->leng=strlen(str);
        NOW->Pdata=(char *)malloc(NOW->leng);
        memcpy(NOW->Pdata, str,NOW->leng);
        memset(str,0, strlen(str));
    }
    NOW=&Firt;
    Pnext=&Firt;
    do{
        NOW=Pnext;
        count=(NOW->leng-1)/8;
        p=NOW->Pdata;
        for(int i=0;i<=count;i++){
            memset(Pstr,'0', 8);
            if(i==count){
                memcpy(Pstr, p, NOW->leng-i*8);
            }else{
                memcpy(Pstr, p, 8);
                p+=8;
            }
            printf("%s\n",Pstr);
        }
        Pnext=NOW->next;
    }while(Pnext!=NULL);
    return 0;
}