#naukaprogramowania #ansic #codeblocks
Mógłby ktoś mi podesłać jakieś wytłumaczenie jak działa makefile, jak dodawać biblioteki?
Ostatnio męczyłem się sporo z dodaniem gtk. Teraz potrzebuję libexif i nie wiem jak podlinkować pliki lib do projektu. Nie rozumiem tego jak to działa.
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Moze mnie ktos uswiadomic co mozna programowac w C pod Linuxa? W sensie, jak polaczyc te obie rzeczy, jakie sa mozliwosci? Wiem, ze mozna np. cos z embeded, albo sterowniki programowac. A co jeszcze? Jakie rzeczy mozna robic ktore sa niskopoziomowe, robi sie je w C, na Linuxa, ale jednoczesnie nie trzeba umiec elektroniki?
I czy warto pod takim katem sie ksztalcic pod wzgledem pracy? Tzn. mysle czy wlasnie nie sprobowac takiej
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#ansic #c #naukaprogramowania
Mam takie zadanie:

Zakładamy, że dynamiczna rezewacja pamięci (użycie funkcji

malloc) jest niedostępna. Wobec tego zadeklaruj w swoim programie tablicę o rozmiarze

określonym pierwszą liczbą w strumieniu danych wejściowych.
  • 36
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Taki fragment kodu znaleziony gdzies w projekcie ( ͡° ͜ʖ ͡°)

if(x == 0)
{
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Uczę się C i zastanawiam się jak działa ten kod.

1. Zdaję się że rozumiem jak działa komparator- w przypadku sortowania zwraca informację czy zmienna z danym indeksem ma być przesunięta czy też nie (poprawcie mnie jeżeli się mylę) 

2. Ale mam problem ze zrozumieniem zapisu (int)a - o co w tym chodzi? Dlaczego tutaj jest zadeklarowany wskaźnik dwa razy? I w jaki sposób to działa? 

int
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

funkcja mapuje pliki do pamięci (mmap) w pętla w pętli dla jakiś tam warunków, teraz chciałbym w przypadku jakiegoś niepowodzenia dodać odmapowanie (munmap) adresów które do tej pory udało się już stworzyć. Lepiej powtórzyć wszystkie pętle i warunki dla mmapa czy lepiej zrobić jakąś strukturę co będzie trzymała adresy i rozmiar i potem sobie przelecę munmapem po wszystkim co udało się zebrać. Pierwsza opcja powiela kod i średnio mi się podoba a
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

rozwiązałem to tak: w dokumentacji funkcji munmap() jest zapis: "It is not an error if the indicated range does not contain any mapped pages." także w przypadku błędu wykorzystałem to i lecę po wszystkich adresach z puli niezależnie w którym punkcie się wysypało. Także w moim przypadku nie musze zbierać adresów i rozmiarów które udało się mapować, przez co oszczędzam miejsce na prowizoryczny GC, tylko lecę po wszystkich adresach munmapem() nawet po
  • Odpowiedz
Mirki z pod tagu #c #programowanie #kompilacja #ansic chodź bardziej #naukaprogramowania . Potrzebuję wykonać makefile, jednak na początku muszę zmienić dwie linijki w kodzie. Instrukcja mówi tak:

Edit the makefile. Modify the following lines:

(a) CC (your ANSI C compiler)

(b) ROOTDIR (the root directory that was prescribed earlier in the process, e.g.,

rng/)
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Massad: make ogarnięty, trzeba wpisywać mingw32-make i śmiga. Teraz mi wypluwa:

No rule to make target 'Users\lenowo\Desktop\testy1/src/assess.c', needed by 'Users\lenowo\Desktop\testy1/obj/assess.o'. Stop.
  • Odpowiedz
@kapelusz: Tablicę jako wskaźnik się da, ale jako wskaźnik i trzeba wtedy ręcznie zarządzać pamięcią, natomiast przedpiszca zaproponował przekazywanie wskaźnika do tablicy w parametrze.
  • Odpowiedz
@ufik78: makra pozwalają Ci na dopasowanie składni języka do potrzeb programisty oraz de facto na programowanie twojego języka programowania.

przykładowo wielki feature Javy 7 to jest "try with resources", czyli coś, co zamyka Ci automatycznie wszystkie pliki zadeklarowane w nawiasach okrągłych w try (...) {...} catch {...} żebyś nie musiał ręcznie tego robić i łapać odpowiednich wyjątków.

huh, Common Lisp chociażby miał to samo dwadzieścia lat wcześniej. ( ͡°
  • Odpowiedz