LINUX.ORG.RU

История изменений

Исправление Eddy_Em, (текущая версия) :

UB

Бред! УМВР!

cat 1.c; gcc 1.c && ./a.out 
#include <stdio.h>
#include <stdlib.h>

typedef struct _x{
        struct _x *next;
        int val;
} _;

int main(){
        _ _$_ = {NULL, -1}, *_p = &_$_;
        for(int __ = 0; __ < 5; ++__){
                _ *___ = calloc(1, sizeof(_));
                ___->val = __;
                _p->next = ___;
                _p = ___;
        }
        _p = &_$_;
        do{
                printf("val: %d\n", _p->val);
                _p = _p->next;
        }while(_p->next);
        return 0;
}
val: -1
val: 0
val: 1
val: 2
val: 3

Исходная версия Eddy_Em, :

UB

Бред! УМВР!