Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

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
Posledné komentáre sú na spodnej časti poslednej stránky.
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 ?

Avatar
Odpovedá na JohnLuther
Patrik Valkovič:1.7.2016 16:52

Chybička, opraveno :)

Odpovedať
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é
Odpovedať
"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.

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);
}
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ť
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

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?

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ť
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

Posledné komentáre sú na spodnej časti poslednej stránky.
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.