abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:55 | Nová verze

    LilyPond (Wikipedie) , tj. multiplatformní svobodný software určený pro sazbu notových zápisů, byl vydán ve verzi 2.26.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    včera 20:33 | Nová verze

    Byla vydána nová verze 11.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 237 vývojářů. Provedeno bylo více než 2 500 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | IT novinky

    Společnost SpaceX amerického miliardáře Elona Muska oznámila, že si zajistila opci buď na akvizici startupu Cursor za 60 miliard dolarů (přes 1,2 bilionu Kč) do konce letošního roku, nebo na zaplacení deseti miliard dolarů za nové partnerství s touto firmou zabývající se generováním kódů. SpaceX se dále prosazuje na lukrativním trhu s vývojářskými nástroji pro umělou inteligenci (AI). Cursor, startup zabývající se prodejem modelů AI pro

    … více »
    Ladislav Hagara | Komentářů: 2
    včera 13:11 | Komunita

    Díky AI modelu Claude Mythos Preview od společnost Anthropic bylo ve Firefoxu nalezeno a opraveno 271 zranitelností.

    Ladislav Hagara | Komentářů: 4
    včera 04:44 | Nová verze

    Byla vydána nová verze 2.54.0 distribuovaného systému správy verzí Git. Přispělo 137 vývojářů, z toho 66 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 13.0. Přehled novinek v aktualizované dokumentaci a na YouTube. Stalo se tak na konferenci GrafanaCON 2026.

    Ladislav Hagara | Komentářů: 0
    21.4. 19:00 | IT novinky

    Na YouTube proběhl Framework [ Next Gen ] Event 2026. Společnost Framework představila nový Framework Laptop 13 Pro, vylepšení Framework Laptopu 16 a OCuLink Dev Kit pro připojení vysoce výkonných periferií jako jsou eGPU a bezdrátovou klávesnici s integrovaným touchpadem Framework Wireless Touchpad Keyboard.

    Ladislav Hagara | Komentářů: 0
    21.4. 18:22 | Nová verze

    Byl vydán Mozilla Firefox 150.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 150 bude brzy k dispozici také na Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 5
    21.4. 17:22 | Zajímavý software

    Byl představen (reddit, 𝕏) webový prohlížeč Brave Origin. Jedná se webový prohlížeč Brave bez VPN, krypto peněženky a odměn, tj. bez funkcí, ze kterých je vývoj Brave financován. Stojí jednorázově 59,99 dolarů. Verze pro Linux je zdarma.

    Ladislav Hagara | Komentářů: 1
    21.4. 12:44 | IT novinky

    Tim Cook po 15 letech opustí post generálního ředitele americké technologické společnosti Apple. Od 1. září ho vystřídá John Ternus, který byl dosud odpovědný za hardware. Cook se stane předsedou představenstva. Cook vedl Apple od roku 2011, kdy funkci převzal od zesnulého spoluzakladatele společnosti Stevea Jobse.

    Ladislav Hagara | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (2%)
     (12%)
     (30%)
     (3%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 1384 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    ukazatel v jazyce C

    Ukazatel je proměnná, jejímž obsahem je určitá adresa (ve virtuální paměti, případně RAM). Pokud se budeme např. bavit o ukazateli na znak, tak obsahem ukazatele na znak je adresa určitého jednoho znaku (tedy na této adrese ten určitý znak leží) nebo se může klidně jednat o adresu prvního člena pole znaků.

    Chtěl bych zdůraznit, že obsahem ukazatele obecně je adresa, se kterou můžeme pracovat pomocí aritmetiky ukazatelů. Tedy můžeme k této adrese přičíst třeba jedničku ( == posun o jeden údaj vpřed). Vždy se tedy posouváme o x údajů (v případě ukazatele na znak tedy o x znaků). To se využívá v případě dynamických polí.

    A protože se ukazatele velmi často používají k tvorbě dynamických polí, tak zde uvedu okomentovaný příklad na použití. Nejdříve ale k tvorbě jednorozměrných polí obecně:

    Nejdříve definujeme ukazatele na nějaký datový typ. Potom alokujeme paměť pro x prvků daného datového typu a ukazateli přiřadíme adresu prvního z nich. Pomocí indexů či aritmetiky ukazatelů s polem pracujeme. Nakonec uvolníme alokovanou (zabranou) paměť.

    /* Vysvětlíme si, jak se postupuje při vytváření jednorozměrného
       dynamického pole s pomocí ukazatele. */
    
    #include <stdio.h>
    #define POCET_PRVKU_POLE 14
    
    int main(void)
    {
      char *pznak; /* Ukazatel na znak. */
      
      pznak = (char *) malloc(POCET_PRVKU_POLE * sizeof(char));
      /* funkce malloc alokovala paměť pro POCET_PRVKU_POLE znaků. */
      /* (char *) je přetypování na ukazatel na znak. */
      /* sizeof(char) navrátí velikost jednoho znaku. */
      
      *pznak = 'A'; /* Prvni prvek pole (s indexem 0) bude mít hodnotu 'A'. */
      /* "*pznak" znamená, že chceme pracovat s hodnotou na adrese,
         která je obsahem ukazatele. '*' zde představuje tzv.
         dereferenční operátor. */
      *(pznak + 1) = 'B'; /* Druhý prvek (s indexem 1).
      *(pznak + POCET_PRVKU_POLE - 1) = 'X'; /* poslední prvek */
    
      /* Poznámka: K hodnotám prvků pole lze přistupovat i pomocí
       indexů, tedy formou "pznak[index] = 'znak';". Je třeba ale
       zdůraznit, že se čísluje od nuly! Tedy první prvek má index 0! */
    
      /* Alokovanou (zabranou) paměť uvolníme takto: */
      free(pznak);
    }
    

    Nakonec si vysvětlíme dva velmi důležité pojmy v souvislosti s ukazateli:

    • Referenční operátor ('&') -- vrací adresu na proměnnou, před níž se uvede. Příklad: pznak = &vstup;
    • Dereferenční operátor ('*') -- umožňuje zapisovat/číst hodnotu na adrese dané obsahem ukazatele. Příklad: *pznak = 'A';

    Dokument vytvořil: Begleiter, 11.11.2010 14:52 | Poslední úprava: Luboš Doležel (Doli), 25.11.2010 11:39 | Další přispěvatelé: David Watzke, Begleiter | Historie změn | Zobrazeno: 1833×

    Další pojmy: UDS - UI - UID - ukazatel v jazyce C - UML - Unicode - Universal Disk Format

    Filtr: A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.