GRY-Online.pl --> Archiwum Forum

Programowanie w C. Rebusy?

10.11.2004
16:08
smile
[1]

ronn [ moralizator ]

Programowanie w C. Rebusy?

Mam pewien problem. Czy moglby mi ktos wytlumaczyc jak rozwiazywac takie 'zadania' ?

#include<stdio.h>
char *c[] = ‹
"DRUT",
"LUKA",
"RANT",
"BOHR"
›;
char **cp[] = ‹c+3, c+2, c+1, c›;
char ***cpp = cp;

main(void)

printf(" %s", **++cpp + 3);
printf(" %s", *cpp[-1] + 3);
printf(" %s", *--*++cpp + 2);
printf(" %s", cpp[-1][-1] + 2);
printf("\n");

return 0;


Co wydrukuje na ekranie taki program?
Odpowiedz to : TRUTKA

Nie wiem co oznaczaja np dwie '*' po sobie? albo takie *--*++ itp.

10.11.2004
16:46
smile
[2]

ronn [ moralizator ]

^^

10.11.2004
17:09
[3]

MOD [ Generaďż˝ ]

** oznacza wskaznik do wskaznika
po instrukcji char **cp[] = ‹c+3, c+2, c+1, c›;
cp wskazuje na cos takiego ["BOHR","RANT","LUKA","DRUT"]
cpp wskazuje na cp cyzli wskazuje na BOHR
--cpp przeniesienie wskaznika do tylu
printf(" %s", **++cpp + 3); ++cpp przeniesienie wskaznika o pole do przodu przed wypisaniem zmiennej
wypisze elementy wyrazu RANT od czwartej litery czyli T
printf(" %s", *cpp[-1] + 3);
wypisze elementy wyrazu BOHR od czwartej litery czyli R
printf(" %s", *--*++cpp + 2);
nie wiem czemu tu skaczemy do wyrazu DRUT moze powinno byc *++*++cpp
wypisze elementy wyrazu DRUT od trzeciej litery czyli UT
printf(" %s", cpp[-1][-1] + 2);
wypisze elementy wyrazu LUKA od trzeciej litery czyli KA
to takie moje zgadywanie i w miare sie zgadza ,najlepiej skompiluj i się pobaw oraz znajdz kurs c++

10.11.2004
17:13
[4]

ronn [ moralizator ]

Dzieki wielkie. Teraz pokombinuje w taki sposob z reszta zadan.

Sprawdzalem
printf(" %s", *--*++cpp + 2);

I ten wiersz, jest dokladnie taki.
To jest C, ale wskazniki sa praktycznie identyczne z tymi w C++

W innych zadaniach mam jeszcze ***. Skoro ** to wskaznik do wskaznika, to 3 gwiazdki (asteriksy?) oznaczaja wskaznik, do wskaznika wskaznika?


10.11.2004
17:23
[5]

MOD [ Generaďż˝ ]

Tak,*** to wskaznik to wskaznika wskaznika.

10.11.2004
17:30
smile
[6]

ronn [ moralizator ]

Dzieki. Swoja droga to te testy sa bez sensu. Kto pisze takie nieczytelne programy?

10.11.2004
17:35
[7]

MOD [ Generaďż˝ ]

U mnie na I roku przerabialismy programowanie w C++ na cwiczeniach na papierze i trzeba sie bylo nauczyc wszystkich tych krzaczków na pamięć (kolo pisalismy na kartce).Niezbyt mi się to podobało.
Tutaj niżej są opisane dokladniej wskazniki:

10.11.2004
17:45
smile
[8]

ronn [ moralizator ]

Wlasnie, na papierze :( Ale w tym wypadku musi tak byc, bo skompilowanie daloby odpowiedz :)

Dzieki za link.

© 2000-2026 GRY-OnLine S.A.