Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

bogatstvo tipova u C

[es] :: C/C++ programiranje :: bogatstvo tipova u C

Strane: 1 2

[ Pregleda: 3236 | Odgovora: 34 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Whitewater
dummy workshop

Član broj: 339178
Poruke: 252



+129 Profil

icon bogatstvo tipova u C20.11.2018. u 18:34 - pre 22 meseci
80% vremena na tipove i 20% na ostatak jezika.

malko su preterali...
Rest of world: This is what we think of America.
America: We don't think about you at all !
 
Odgovor na temu

eembedded
student
novi sad

Član broj: 338914
Poruke: 49
*.dynamic.vipmobile.rs.



+8 Profil

icon Re: bogatstvo tipova u C20.11.2018. u 20:44 - pre 22 meseci
O cemu ti to ?
Pa imas dovoljno za tipova za vecinu stvari, jedino ako ti ne treba nesto specificno veliko. A za kastom tipove ti svakako treba vremena, + kako C je namenjen i za primene gde su ti resursi ograniceni pa onda svakako pravis ono sto ti zadovoljava potrebe i ono sto mozes da smestis u ram i rom.
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 2886

Jabber: djoka_l


+1197 Profil

icon Re: bogatstvo tipova u C20.11.2018. u 21:56 - pre 22 meseci
Ovaj momak tek otkriva C i nema veze o čemu priča.

Recimo, ne zna da u C postoje 32 rezervisane reči, od kojih je 17 u vezi tipova podataka (više od pola jezika).
C je "mali" jezik. Učenje jezika je brzo. Tek kada se nauče osnove jezika, počinju da se uče biblioteke.
Uzgred, 99% učenja C je da naučiš kako da rukuješ pokazivačima.
 
Odgovor na temu

Whitewater
dummy workshop

Član broj: 339178
Poruke: 252



+129 Profil

icon Re: bogatstvo tipova u C21.11.2018. u 04:03 - pre 22 meseci
mislim da se oko pokazivaca nepotrebno dize buka. Meni je konkretno poziv funkcija i scope promenljivih mnogo komplikovanija stvar.
Rest of world: This is what we think of America.
America: We don't think about you at all !
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 2886

Jabber: djoka_l


+1197 Profil

icon Re: bogatstvo tipova u C21.11.2018. u 07:10 - pre 22 meseci
^^ Znači da još nisi počeo da radiš sa pokazivačima. ^^

Code (c):

struct net_device_ops {
int                     (*ndo_init)(struct net_device *dev);
void                    (*ndo_uninit)(struct net_device *dev);
int                     (*ndo_open)(struct net_device *dev);
int                     (*ndo_stop)(struct net_device *dev);
netdev_tx_t             (*ndo_start_xmit) (struct sk_buff *skb,
struct net_device *dev);
 


http://www.acodersjourney.com/2018/05/top-20-c-pointer-mistakes/
 
Odgovor na temu

eembedded
student
novi sad

Član broj: 338914
Poruke: 49
*.dynamic.vipmobile.rs.



+8 Profil

icon Re: bogatstvo tipova u C21.11.2018. u 18:43 - pre 22 meseci
Citat:
Whitewater:
mislim da se oko pokazivaca nepotrebno dize buka. Meni je konkretno poziv funkcija i scope promenljivih mnogo komplikovanija stvar.


Poziv funkcija ?? scope promenljivih ????, ako ti pointeri nisu frka sto onda ovo napisa ?
 
Odgovor na temu

Whitewater
dummy workshop

Član broj: 339178
Poruke: 252



+129 Profil

icon Re: bogatstvo tipova u C21.11.2018. u 20:02 - pre 22 meseci
ja kazem koji je meni koncept bio tezi.

Ne mogu jos uvek da sagledam u cemu je prava prednost pointer. Shvatio sam kako mogu da pristede memoriju kod dinamickog dodeljivanja lokacija i ucine kod elegantnim, npr liste stack... jedino da budem iskren ne nam koliko je to danas narocito potrebno. Ali to je vec posebna tema...
Rest of world: This is what we think of America.
America: We don't think about you at all !
 
Odgovor na temu

mjanjic
Šikagou

Član broj: 187539
Poruke: 1922



+554 Profil

icon Re: bogatstvo tipova u C21.11.2018. u 21:52 - pre 22 meseci
Ko smatra da zna dovoljno C, neka odgonetne zadatke sa datim kodom (bez gledanja rešenja) iz Programiranja 2 na ETF-u:
https://rti.etf.bg.ac.rs/rti/ir1p2/rokovi.html
Blessed are those who can laugh at themselves, for they shall never cease to be amused.
 
Odgovor na temu

Whitewater
dummy workshop

Član broj: 339178
Poruke: 252



+129 Profil

icon Re: bogatstvo tipova u C21.11.2018. u 22:25 - pre 22 meseci
dobro to je nivo 2 na ETF, necemo sad preterivati
Rest of world: This is what we think of America.
America: We don't think about you at all !
 
Odgovor na temu

Whitewater
dummy workshop

Član broj: 339178
Poruke: 252



+129 Profil

icon Re: bogatstvo tipova u C21.11.2018. u 23:36 - pre 22 meseci
dajte mi 3 razloga zasto da dobro procitam Understanding and using C pointers
Rest of world: This is what we think of America.
America: We don't think about you at all !
 
Odgovor na temu

Predrag Supurovic
Pedja YT9TP
Užice

Član broj: 157129
Poruke: 5910

Sajt: pedja.supurovic.net


+1424 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 06:10 - pre 22 meseci
Citat:
Whitewater: dajte mi 3 razloga zasto da dobro procitam Understanding and using C pointers


Može 1?

Da bi naučio da radiš u C-u.

 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4876
*.static.isp.telekom.rs.

Jabber: xfiles@elitesecurity.org


+628 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 06:22 - pre 22 meseci
Ako se budeš bavio programiranjem na C/C++ jezicima, bićeš prinuđen da razumeš, modifikuješ i koristiš već gotov C/C++ kod, ili da izrađuješ kod koji je usaglašen sa ostatkom projekta.

Nepoznavanje funkcionisanja i primene pointera (npr. link koji ti je ostavio djoka_l) tada postaje veliki hednikep.

Naravno da imaš pravo na svoje mišljenje, ali mislim da si poranio sa ocenama o jeziku.

E sad, niko nije zaljubljen u pointere, takav je jezik.

Citat:
Whitewater: mislim da se oko pokazivaca nepotrebno dize buka. Meni je konkretno poziv funkcija i scope promenljivih mnogo komplikovanija stvar.

Ovo može da ime veze upravio sa pointerima.
 
Odgovor na temu

Branimir Maksimovic
Senior Software Engineer

Član broj: 64947
Poruke: 4744
82.117.201.*



+970 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 06:35 - pre 22 meseci
C je zamisljen kao jezik koji ce zameniti asembler da bi se mogao napisati operativni sistem Unix.
Sa te strane treba razumeti dizajn odluke u vezi jezika.
press any key to continue or any other to quit....
 
Odgovor na temu

Whitewater
dummy workshop

Član broj: 339178
Poruke: 252



+129 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 06:47 - pre 22 meseci
da, nekako oseca se u C taj neki low level.

evo sad bas kad radim pointere susreo sam se sa konceptom steka i heapa. Nazalost nisam bas nigde nasao lepo objasnjnje kako operativni sisitem dodeli C programu memoriju i koji deo C onda brine o dodeljivanju adresa ? Ili pak brine sam OS ??

zivim za dan kad cu naci lepo napisanu knjjigu, Evo ovaj o pointerima kaze hajmo prvo memoriju to je vazno, yaay, ali nema ni jedan dijagram. Da li ima neko neki link na neki lep yt koji objasnjava the stack and the heap u C ?

(inace nije mi jeasno kako sam dospeo ovde)
Rest of world: This is what we think of America.
America: We don't think about you at all !
 
Odgovor na temu

Whitewater
dummy workshop

Član broj: 339178
Poruke: 252



+129 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 06:50 - pre 22 meseci
ahh ok, evo u drugom poglavlju

A C program executes within a runtime system. This is typically the environment provided
by an operating system. The runtime system supports the stack and heap along
with other program behavior.


idem sada da vidim sta je runtime system
Rest of world: This is what we think of America.
America: We don't think about you at all !
 
Odgovor na temu

Branimir Maksimovic
Senior Software Engineer

Član broj: 64947
Poruke: 4744
82.117.201.*



+970 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 06:56 - pre 22 meseci
Stek i heap su strukture podataka nevezano za OS. Stek je struktura gde se alokacija vrsi dodavanjem na kraj (raste u memoriji na dole uglavnom
ali ne mora), i oslobadja se brisanjem sa kraja samo tako sto se podesi stek pointer. Zgodan je za lokalne varijable zato sto svaki put
kada udjes u f-ju alocira se n bajtova koji se zovu frame, a svaki put kad izadjes iz f-je zadnji frame je upravo ono sto je alocirala
data f-ja pa se jednostavno oslobodi podesavanjem stek pointera.
Heap je struktura koja moze biti bilo kakva i koristi se za dinamicko alociranje memorije (malloc) koja se mora eksplicitno osloboditi
pozivom recimo f-je free. Kako ce to biti izvedeno zavisi od alokatora koji se koristi. Neoslobadjanje ovakve memorije ima za posledicu
tzv "memory leak".

edit: runtime sistem je biblioteka koja inicijalizuje sve potrebne strukture i poziva "main" f-ju kojoj prosledjuje sve potrebne parametre.
Znaci nije "main" ono sto OS poziva nego neku skrivenu f-ju iz libc-a, a ista poziva main.

press any key to continue or any other to quit....
 
Odgovor na temu

peromalosutra
Ivan Rajkovic
Software engineer
Luxoft
Berlin

Član broj: 54774
Poruke: 844
62.96.135.*



+144 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 08:53 - pre 22 meseci
Citat:
Whitewater:Ne mogu jos uvek da sagledam u cemu je prava prednost pointer. Shvatio sam kako mogu da pristede memoriju kod dinamickog dodeljivanja lokacija i ucine kod elegantnim, npr liste stack... jedino da budem iskren ne nam koliko je to danas narocito potrebno. Ali to je vec posebna tema...


Bez pointera nemas dinamicku memoriju. Gomila biblioteka ocekuju da im proslijedis nekakav kontekst ili handle koji je cesto pointer. Ako neces da koristis pointere, postavljas drasticna ogranicenja na arhitekturu aplikacije, npr. pointeri omogucavaju nivo indirekcije koji je cesto potreban da razdvojis slojeve u aplikaciji.

Npr. zamisli da imas strukturu Context koja sadrzi gomilu parametara (npr. CLI parametri isparsirani za lak pristup). Razlicite funkcije unutar programa moraju da rade drugacije u zavisnosti od proslijedjenih parametara koje je korisnik proslijedio. Ovo se uglavnom radi tako sto proslijedis pokazivac na konstantnu strukturu (const ctx*), tako da svaka funkcija moze da cita polja iz te strukture, a ne moze da ih mijenja (read only). Alternativa bi bila da kopiras komplet strukturu prilikom svakog pozivanja funkcije, sto je veoma neefikasno (sizeof(*ctx) vs sizeof(ctx)). Da ne spominjem tek slucaj ako zelis da funkcije mogu da mijenjaju dio ove strukture, bez pointera to ne mozes efikasno da uradis.

Na kraju, ako ne znas razliku izmedju sledece 3 linije, tesko da mozes da se zoves C programerom.

Code:

const int *a;
int * const a;
const int * const a;

 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12670



+4666 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 09:20 - pre 22 meseci
Upravo mi je pala na pamet analogija zasto su korisni pointeri.

Zamisli da trebas da das nekom psa da ga proseta. Kako ces to uraditi? Stavices mu povodac i daces povodac setacu. Mozes umesto toga i da odvedes psa u neki istrazivacki centar i da ga kloniraju pa da uzmes klona i pruzis ga ovom sto treba da ga seta. Ali.. Ipak ces koristiti povodac.
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16048
*.adsl-surfen.hetnet.nl.



+6809 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 10:04 - pre 22 meseci
Citat:
Whitewater:
idem sada da vidim sta je runtime system


Runtime system ti je kod koji obicno dolazi ili od pisca operativnog sistema ili od pisca kompajlera.

Taj kod inicijalizuje tvoju aplikaciju, radi neke osnovne stvari koje su neophodne pre nego sto se uopste pozove main() i pruza interfejse za razne standardne C biblioteke (recimo kad pozoves printf(), to je funkcija implementirana u C runtime biblioteci).

Takodje, obicno runtime system se bavi i menadzmentom memorije u tvojoj aplikaciji - jako retko postoji potreba da direktno zoves operativni sistem da alociras memoriju (osim ako ne radis nesto vrlo specificno, recimo hoces da mapiras memoriju izmedju procesa ili ti treba jako veliko parce memorije sa specificnim osobinama npr. da mora da bude u fizickoj memoriji ne u swap-u i sl.). Takodje, C runtime biblioteka za tebe radi i menadzment malih alokacija memorije iz heap-a i stara se o tome da se memorija alocirana od OS-a optimalno koristi.

Zamisli "runtime system" kao sloj izmedju OS-a i tvoje aplikacije koji pruza API-je neophodne C programu da funkcionise.
DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1
Demo Videos: http://www.digicortex.net/node/17
Gallery: http://www.digicortex.net/node/25
 
Odgovor na temu

stameni
Ivan Stamenković

Član broj: 6739
Poruke: 429



+7 Profil

icon Re: bogatstvo tipova u C22.11.2018. u 13:39 - pre 22 meseci
Evo jednog izvanrednog tutorijala o pointerima u C-u:

Code:
https://pdos.csail.mit.edu/6.828/2014/readings/pointers.pdf


Topla preporuka. Bez šale, čudo jedno koliko valja :)
 
Odgovor na temu

[es] :: C/C++ programiranje :: bogatstvo tipova u C

Strane: 1 2

[ Pregleda: 3236 | Odgovora: 34 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.