#include <stdio.h>
#include <stdlib.h>
struct node{
char num; //Data of the node
struct node * nextptr; //Address of the next node
} ;
typedef struct node element;
typedef element * link;
link head;
void displayList( ) ; // function to display the list
link stol( const char s[ ] ) {
link head;
if ( s[ 0 ] == '\0 ' ) return ( NULL) ;
else {
head
= ( link
) malloc ( sizeof ( element
) ) ; head-> num = s[ 0 ] ;
head-> nextptr = stol( s + 1 ) ;
return ( head) ;
}
}
int main( void ) {
char s[ ] = "abc" ;
printf ( "\n \n Linked List : To create and display Singly Linked List :\n " ) ; printf ( "-------------------------------------------------------------\n " ) ; head = stol( s) ;
displayList( ) ;
return 0 ;
}
void displayList( ) {
if ( head == NULL) {
}
else {
link tmp = head;
while ( tmp != NULL) {
printf ( " Data = %d(%c)\n " , tmp
-> num
, tmp
-> num
) ; tmp = tmp-> nextptr;
}
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCnN0cnVjdCBub2RlewogICAgY2hhciBudW07ICAgICAgICAgICAgICAgICAgICAgICAgLy9EYXRhIG9mIHRoZSBub2RlCiAgICBzdHJ1Y3Qgbm9kZSAqbmV4dHB0cjsgICAgICAgICAgIC8vQWRkcmVzcyBvZiB0aGUgbmV4dCBub2RlCn07CnR5cGVkZWYgc3RydWN0IG5vZGUgZWxlbWVudDsKdHlwZWRlZiBlbGVtZW50ICpsaW5rOwpsaW5rIGhlYWQ7Cgp2b2lkIGRpc3BsYXlMaXN0KCk7ICAgICAgICAgLy8gZnVuY3Rpb24gdG8gZGlzcGxheSB0aGUgbGlzdApsaW5rIHN0b2woY29uc3QgY2hhciBzW10pewogICAgbGluayBoZWFkOwogICAgaWYgKHNbMF0gPT0gJ1wwJylyZXR1cm4oTlVMTCk7CiAgICBlbHNlIHsKICAgICAgICBoZWFkID0gKGxpbmspbWFsbG9jKHNpemVvZihlbGVtZW50KSk7CiAgICAgICAgaGVhZC0+bnVtID0gc1swXTsKICAgICAgICBoZWFkLT5uZXh0cHRyID0gc3RvbChzICsgMSk7CiAgICAgICAgcmV0dXJuKGhlYWQpOwogICAgfQp9CgppbnQgbWFpbih2b2lkKXsKICAgIGNoYXIgc1tdID0gImFiYyI7CgogICAgcHJpbnRmKCJcblxuIExpbmtlZCBMaXN0IDogVG8gY3JlYXRlIGFuZCBkaXNwbGF5IFNpbmdseSBMaW5rZWQgTGlzdCA6XG4iKTsKICAgIHByaW50ZigiLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuIik7CgloZWFkID0gc3RvbChzKTsKICAgIGRpc3BsYXlMaXN0KCk7CiAgICByZXR1cm4gMDsKfQoKdm9pZCBkaXNwbGF5TGlzdCgpewogICAgaWYgKGhlYWQgPT0gTlVMTCl7CiAgICAgICAgcHJpbnRmKCIgTGlzdCBpcyBlbXB0eS4iKTsKICAgIH0KICAgIGVsc2V7CiAgICAgICAgbGluayB0bXAgPSBoZWFkOwogICAgICAgIHdoaWxlICh0bXAgIT0gTlVMTCl7CiAgICAgICAgICAgIHByaW50ZigiIERhdGEgPSAlZCglYylcbiIsIHRtcC0+bnVtLCB0bXAtPm51bSk7CiAgICAgICAgICAgIHRtcCA9IHRtcC0+bmV4dHB0cjsKICAgICAgICB9CiAgICB9Cn0=