NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 7 - Pole v jazyce C

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Odpovídá na Patrik Valkovič
Patrik Pastor:23.8.2019 23:08

kdyz je to skryte, tak proc to dali na github. Jak skryte? pokud je to na harddisku, musi byt prece zpusob jak se k tomu dostat

 
Odpovědět
23.8.2019 23:08
Avatar
Odpovídá na Patrik Pastor
Patrik Valkovič:23.8.2019 23:12

To, jak operační systém nakládá z pamětí, nezměníš z programu a ani tě to nezajímá, protože operační systém ti prostě vrátí adresu, kterou můžeš používat. Kam adresa ukazuje tě jako programátora nezajímá. Jestli operační systém používá segmentaci, stránkování nebo hardwarové adresy tě taky nezajímá - z programu je to pro tebe skryté a ty jen využíváš operační systém.
Změnit by to šlo - kdyby jsi upravil kód co jsem ti poslal, překompiloval Linux kernel a spustil ten. Na harddisku máš binární kód, ne zdrojáky.

Odpovědět
23.8.2019 23:12
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Odpovídá na Patrik Valkovič
Patrik Pastor:23.8.2019 23:16

kdy to slo prekompilovat, taky asi uz byl na to nejaky malware ne? ktery bi zmenil kernel sve obeti se svym vlastni malcodem (pokud by obet mela kernel a ne win)

 
Odpovědět
23.8.2019 23:16
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Patrik Pastor
DarkCoder:23.8.2019 23:42

Výhoda pointeru? Když pracuješ s polem jako parametr funkce, předáváš ve skutečnosti ukazatel na pole, když pracuješ se soubory, vytváříš na něj ukazatel, když předáváš strukturu pomocí ukazatele, předáváš pouze její adresu, pokud pro předání struktury nepoužiješ ukazatel, předáváš ji jako celek. Což bude podstatně pomalejší. Veškerá práce s objekty, totéž co u struktury. Přístup k prvkům pole pomocí ukazatele je efektivnější nežli indexace pole. Když chceš měnit hodnoty argumentů ve funkci, musíš předávat ukazatel na ně. Když chceš zjistit kolik prvků je mezi dvěma prvky pole, použiješ ukazatele (rozdíl pointerů). Pole a ukazatele, to je jedna z nejsilnějších věcí v C. Ukazatelová aritmetika. Když chceš vracet vícero hodnot z funkce používáš ukazatele. Funkce mají svoje adresy, pro vyvolání funkcí opět můžeš využít ukazatele. Chceš-li aby tvé aplikace byly efektivnější, pracuj s ukazateli. Ukazatelé Ti poskytují obrovskou sílu, ale nesmíš dovolit aby ovládly oni tebe, jinak za to draze zaplatíš.

Odpovědět
23.8.2019 23:42
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
0
Člen
Avatar
0:20.10.2019 8:55

Nevíte někdo co dělám špatně??

 
Odpovědět
20.10.2019 8:55
Avatar
Odpovídá na 0
Neaktivní uživatel:20.10.2019 10:42

Kolikrát ještě to budeš psát? Viz lekci 3.

Odpovědět
20.10.2019 10:42
Neaktivní uživatelský účet
Avatar
0
Člen
Avatar
Odpovídá na Neaktivní uživatel
0:20.10.2019 18:02

Rád bych to nepsal ale potřeboval jsem odpověď

 
Odpovědět
20.10.2019 18:02
Avatar
Odpovídá na 0
Honza Černoch:24.11.2019 18:37

zkus tam dat:
int b;
b = a * 2;
printf(''%d", b)

 
Odpovědět
24.11.2019 18:37
Avatar
Odpovídá na Honza Černoch
Honza Černoch:24.11.2019 18:39

printf(''%d", b);

 
Odpovědět
24.11.2019 18:39
Avatar
DarkCoder
Člen
Avatar
DarkCoder:18.12.2024 18:12

Pokud v článku požadujete načtení dat do konkrétního prvků pole, bylo by dobré to ukázat v tomto článku.

Adresa n-tého prvku pole:

&pole[n-1]

Tedy adresa druhého prvku (index 1) je: &pole[1]

Odpovědět
18.12.2024 18:12
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 40.