#include <stdio.h>

typedef struct{
	unsigned char ptr;
	int data;
}myLL;


int main(void) {
	myLL a[255];
	a[0].ptr  = 1;  // Нулевой элемент связного списка указывает на первый
	a[0].data = 666;// Хранит это число
  
	a[1].ptr  = 2;   // Первый на второй
	a[1].data = 1488;// Хранит это число
  
	a[2].ptr  = 0;     // Второй на нулевой (ну просто так мне захотелось)
  // Это будет особый, зацикленный связный список 
	a[2].data = 123456;// Хранит это число  
  
  
  myLL *aaa = a; // Указатель на первый элемент, который мы будем двигать
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему 
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему
  printf("%i\n", aaa->data);
  aaa = a + aaa->ptr; // Идем к следующему 
  
	return 0;
}