#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=