- #include<stdio.h> 
- #include<stdlib.h> 
- #include<string.h> 
-   
- typedef struct char_node *char_list; 
-   
- struct char_node{ 
-     char info; 
-     char_list next; 
- }char_node; 
-   
- char_list makesNode(void); 
- char_list makesValueNode(char value); 
- char_list makesList(char nome[]); 
- void viewNode(char_list l); 
- void viewList(char_list l); 
-   
- int main(){ 
-     char nome[] = "Ugo"; 
-     char_list nuovo = makesList(nome); 
-     if(nuovo != NULL) 
-         viewList(nuovo); 
-     return 0; 
- } 
-   
- char_list makesNode(void){ 
-     return (- char_list )malloc(sizeof(struct-  char_node ));
 
- } 
-   
- char_list makesValueNode(char value){ 
-     char_list li = NULL; 
-     li = makesNode(); 
-     li -> info = value; 
-     li -> next = NULL; 
-     return li; 
- } 
-   
- char_list makesList(char nome[]){ 
-     char_list nuovo; 
-     char_list head = NULL; 
-     l = l - 1; 
-     while(l >= 0 ){ 
-         nuovo = makesValueNode(nome[l]); 
-         if(nuovo != NULL){ 
-             nuovo -> next = head; 
-             head = nuovo; 
-             l = l - 1; 
-         } 
-     } 
-     return nuovo; 
- } 
-   
- void viewNode(char_list l){ 
- } 
-   
- void viewList(char_list l){ 
-     while(l != NULL){ 
-         viewNode(l); 
-         l = l -> next; 
-     } 
- } 
-   
				I2luY2x1ZGU8c3RkaW8uaD4KI2luY2x1ZGU8c3RkbGliLmg+CiNpbmNsdWRlPHN0cmluZy5oPgoKdHlwZWRlZiBzdHJ1Y3QgY2hhcl9ub2RlICpjaGFyX2xpc3Q7CgpzdHJ1Y3QgY2hhcl9ub2RlewogICAgY2hhciBpbmZvOwogICAgY2hhcl9saXN0IG5leHQ7Cn1jaGFyX25vZGU7CgpjaGFyX2xpc3QgbWFrZXNOb2RlKHZvaWQpOwpjaGFyX2xpc3QgbWFrZXNWYWx1ZU5vZGUoY2hhciB2YWx1ZSk7CmNoYXJfbGlzdCBtYWtlc0xpc3QoY2hhciBub21lW10pOwp2b2lkIHZpZXdOb2RlKGNoYXJfbGlzdCBsKTsKdm9pZCB2aWV3TGlzdChjaGFyX2xpc3QgbCk7CgppbnQgbWFpbigpewogICAgY2hhciBub21lW10gPSAiVWdvIjsKICAgIGNoYXJfbGlzdCBudW92byA9IG1ha2VzTGlzdChub21lKTsKICAgIGlmKG51b3ZvICE9IE5VTEwpCiAgICAgICAgdmlld0xpc3QobnVvdm8pOwogICAgcmV0dXJuIDA7Cn0KCmNoYXJfbGlzdCBtYWtlc05vZGUodm9pZCl7CiAgICByZXR1cm4gKGNoYXJfbGlzdCltYWxsb2Moc2l6ZW9mKHN0cnVjdCBjaGFyX25vZGUpKTsKfQoKY2hhcl9saXN0IG1ha2VzVmFsdWVOb2RlKGNoYXIgdmFsdWUpewogICAgY2hhcl9saXN0IGxpID0gTlVMTDsKICAgIGxpID0gbWFrZXNOb2RlKCk7CiAgICBsaSAtPiBpbmZvID0gdmFsdWU7CiAgICBsaSAtPiBuZXh0ID0gTlVMTDsKICAgIHJldHVybiBsaTsKfQoKY2hhcl9saXN0IG1ha2VzTGlzdChjaGFyIG5vbWVbXSl7CiAgICBjaGFyX2xpc3QgbnVvdm87CiAgICBjaGFyX2xpc3QgaGVhZCA9IE5VTEw7CiAgICBpbnQgbCA9IHN0cmxlbihub21lKTsKICAgIGwgPSBsIC0gMTsKICAgIHdoaWxlKGwgPj0gMCApewogICAgICAgIG51b3ZvID0gbWFrZXNWYWx1ZU5vZGUobm9tZVtsXSk7CiAgICAgICAgaWYobnVvdm8gIT0gTlVMTCl7CiAgICAgICAgICAgIG51b3ZvIC0+IG5leHQgPSBoZWFkOwogICAgICAgICAgICBoZWFkID0gbnVvdm87CiAgICAgICAgICAgIGwgPSBsIC0gMTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gbnVvdm87Cn0KCnZvaWQgdmlld05vZGUoY2hhcl9saXN0IGwpewogICAgcHJpbnRmKCIlYyIsIGwtPmluZm8pOwp9Cgp2b2lkIHZpZXdMaXN0KGNoYXJfbGlzdCBsKXsKICAgIHdoaWxlKGwgIT0gTlVMTCl7CiAgICAgICAgdmlld05vZGUobCk7CiAgICAgICAgbCA9IGwgLT4gbmV4dDsKICAgIH0KfQo=