Veľkonočná akcia je tu a s ňou aj extra kredity ZADARMO na náš interaktívny e-learning. Dobij si teraz kredity a posuň sa vo svojej kariére vpred!
Zarábaj až 6 000 € mesačne! Akreditované rekvalifikačné kurzy od 0 €. Viac informácií.

Diskusia – 7. diel - Polia v jazyku C

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Avatar
JohnLuther
Člen
Avatar
JohnLuther:6.1.2016 14:29

>Syntaxe hvězdiček si nemusíte všímat, jde o to, že funkce vrací výraz a - b, který je záporný pokud je a > b, nulový pokud a = b a kladný pokud a < b. Podle této hodnoty qsort() poté porovnává. Pokud bychom chtěli pole řadit naopak (sestupně), zadali bychom zde b - a.
Nemá to byť celé naopak ?

 
Odpovedať
6.1.2016 14:29
Avatar
Odpovedá na JohnLuther
Patrik Valkovič:1.7.2016 16:52

Chybička, opraveno :)

Odpovedať
1.7.2016 16:52
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
DarkCoder
Člen
Avatar
Odpovedá na David Hartinger
DarkCoder:6.10.2016 12:43

Pěkný článek, má úroveň. Je v něm vidět způsob práce s poli, učí dobrým návykům a ukazuje i na místa na co si dát pozor (deklarace, inicializace, načtení, výpis, přiřazení, použití). Vyzdvihl bych zejména dvě místa a to odstavec Konstanty a Meze pole. Chybí snad jen informace o způsobu kopírování pole do jiného pole. Ale jinak článek obsahuje vše nejdůležitější pro práci jednorozměrného pole s čísly. Dobrá práce!

Editované 6.10.2016 12:44
Odpovedať
6.10.2016 12:43
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Jiří Kofránek doc. MUDr. :20.7.2017 14:01

Davide,

jestli to má být seriál pro začátečníky, tak není možné bez vysvětlení to toho prásknout definici funkce "porovnej" a její volání bez vysvětlení co znamenají ty hvezdičky.

Chtělo by to v kapitole Seřazení pole dát nějaký vysvětlující odstavec.

 
Odpovedať
20.7.2017 14:01
Avatar
gusto
Člen
Avatar
gusto:22.8.2017 10:28

Chcel by som sa opytat, preco je tu 2x pouzity cyklus for

#include <stdio.h>
#include <stdlib.h>
#define POCET 10

int main(int argc, char** argv) {
        // Vytvoření pole
        int pole[POCET];

        // Naplnění pole
        int i;
        for (i = 0; i < POCET; i++)
        {
                pole[i] = i + 1;
        }

        // Výpis pole
        for (i = 0; i < POCET; i++)
        {
                printf("%d ", pole[i]);
        }
        return (EXIT_SUCCESS);
}

Preco tam je druhy for ?
Nebolo by jednoduchsie druhy for vynechat a vypis pouzit v bloku prveho for-u ??
Asi takto ?

#include <stdio.h>
#include <stdlib.h>
#define POCET 10

int main(int argc, char** argv) {
        // Vytvoření pole
        int pole[POCET];

        // Naplnění pole
        int i;
        for (i = 0; i < POCET; i++)
        {
                pole[i] = i + 1;
                printf("%d ", pole[i]);
        }


        return (EXIT_SUCCESS);
}
 
Odpovedať
22.8.2017 10:28
Avatar
Odpovedá na gusto
Libor Šimo (libcosenior):22.8.2017 11:52

Je to priprava na funkcie (dalsie lekcie). Kazda funkcia by mala mat jedno univerzalne vyuzitie.

Odpovedať
22.8.2017 11:52
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Patrik Pastor:23.8.2019 18:54

jak se castuje pointer? nebo jak mam chapat (int*)a. "a" je v definici deklarovane jako pointer typu void (const void* a), ale je pouzita hodnota ((int)a ... hodnota ceho? hodnota (*int)a.., neco jako precastovani pointer typu int na typ void? Chtel bych pochopit jak je to mysleno v te funcki "porovnej". Zavolal bych na @DarkCoder :D

 
Odpovedať
23.8.2019 18:54
Avatar
Odpovedá na Petr Laštovička
Patrik Pastor:23.8.2019 18:59

Kdyz OS vynuluje pamet predtim, nez ji dam nam - pri incializovani naseho pole, tak jak to ze v nem jsou nahodna cisla? Z ceho? Pokud to nepouzila jina apliakce jak rikas, tak z ceho se ty hodnoty na ktere pole pointuje berou? proc nejsou taky same nuly?

 
Odpovedať
23.8.2019 18:59
Avatar
Odpovedá na Patrik Pastor
Patrik Valkovič:23.8.2019 19:29

Ahoj. Operační systém sice paměť vynuluje, ale jen pro náš proces (a i tak bych se nespoléhal na to, že to operační systém udělá, protože nemusí). Pokud do určité paměti něco zapíšeme a poté na tom stejném místě vytvoříme pole, hodnoty budou nenulové. Stejné je to poté s dynamickou alokací - na nových místech jsou bity nulové (ale opět bych na to nespoléhal), nicméně po uvolnění paměti a novém přiřazení bity nulové být nemusí.

Odpovedať
23.8.2019 19:29
Nikdy neumíme dost na to, abychom se nemohli něco nového naučit.
Avatar
Odpovedá na Patrik Valkovič
Patrik Pastor:23.8.2019 19:35

jak tedy vnitrne uvolnuje OS misto v pameti? jaky pouziva pro to algoritmus? Davala jsem otazku tady, jestli je mozne zapsat vlastni data na libolnou adresu - https://stackoverflow.com/…ion-not-work . Dost lidi se na to na me nastavalo ale :D, coz nechapu, kdyz jsem dal normalni otazku

 
Odpovedať
23.8.2019 19:35
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 40.