Anthony Enzor-DeMeo je novým CEO Mozilla Corporation. Mozillu převzal po dočasné CEO Lauře Chambers. Vybudovat chce nejdůvěryhodnější softwarovou společnost na světě.
Byla vydána nová verze 9.20 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Vypíchnout lze například nový balíček RustDesk Server pro vzdálený přístup.
Jonathan Thomas oznámil vydání nové verze 3.4.0 video editoru OpenShot (Wikipedie). Představení novinek také na YouTube. Zdrojové kódy OpenShotu jsou k dispozici na GitHubu. Ke stažení je i balíček ve formátu AppImage. Stačí jej stáhnout, nastavit právo na spouštění a spustit.
Byla vydána nová verze 1.6 otevřeného, licenčními poplatky nezatíženého, univerzálního ztrátového formátu komprese zvuku Opus (Wikipedie) a jeho referenční implementace libopus. Podrobnosti na demo stránce.
Vojtěch Polášek představil Vojtux, tj. linuxovou distribuci pro zrakově postižené uživatele. Vychází ze spinu Fedory 43 s desktopovým prostředím MATE. Konečným cílem je, aby žádný Vojtux nebyl potřeba a požadovaná vylepšení se dostala do upstreamu.
Byla vydána (Mastodon, 𝕏) druhá RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.
Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 160 (pdf).
Izrael od února zakáže dětem používat v prostorách základních škol mobilní telefony. Podle agentury AFP to uvedlo izraelské ministerstvo školství, které zdůraznilo negativní dopady, které na žactvo používání telefonů má. Izrael se tímto krokem přidává k rostoucímu počtu zemí, které dětem ve vzdělávacích zařízeních přístup k telefonům omezují.
Internetová společnost Google ze skupiny Alphabet pravděpodobně dostane příští rok pokutu od Evropské komise za nedostatečné dodržování pravidel proti upřednostňování vlastních služeb a produktů ve výsledcích vyhledávání. V březnu EK obvinila Google, že ve výsledcích vyhledávání upřednostňuje na úkor konkurence vlastní služby, například Google Shopping, Google Hotels a Google Flights. Případ staví Google proti specializovaným
… více »Byl oznámen program a spuštěna registrace na konferenci Prague PostgreSQL Developer Day 2026. Konference se koná 27. a 28. ledna a bude mít tři tracky s 18 přednáškami a jeden den workshopů.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define RADKY 5
#define DELKA 256
int main(void) {
char **text;
int i;
/* Alokace pole. */
text=(char **) malloc(RADKY*sizeof(char *));
for (i=0; i<RADKY; i++)
text[i]=(char *) malloc(DELKA*sizeof(char));
/* Neco do nej dame. */
strcpy(text[0], "prvni");
strcpy(text[1], "druhy");
/* Zkusime to vytisknout. */
printf("%s", text[0]);
/* Uvolneni pole. */
for (i=0; i<RADKY; i++) free(text[i]);
free(text);
return(0);
}
Místo RADKY a DELKA můžeš mít libvolnou proměnnou typu int. Nezapomeň, že dvourozměrné pole musíš uvolňovat ve dvou krocích. Snad jsem to trefil, kdyžtak napiš mail.
typedef struct {
char *radek;
struct *radek;
} radek;
(ted si nejsem jisty syntaxi) a pak postupne pridavat prvky..
no a zpetne prochazeni taky bude horor...
cili jednoducha funkce v C na to neexistuje, moznosti jsou: naprogramovat si to sam, pouzit C++ (asi nejlepsi volba) nebo pouzit nejaky script jazyk
printf("Zadej pocet radku: ");
scanf("%d", &radky);
tak pak muj priklad funguje, staci misto RADKY napsat radky:
/* Alokace pole. */
text=(char **) malloc(radky*sizeof(char *));
for (i=0; i<radky; i++)
text[i]=(char *) malloc(DELKA*sizeof(char));
a je to jednodussi.
typedef struct {
char *retezec;
radek *dalsi;
radek *predchozi;
} radek;
Tohle resi docela dobre zpetne prochazeni a je to myslim dobre.
jinak me ale jste napadla jedna vec kterou pozuivam kdyz nejde o moc dat a hodi se s nima pracovat jako s polem (typicky zpracovani dat ve fortranu), pak lze pouzit pole tak,
ze se nejprve naplni 2 prvky, kdyz to nestaci tak se 2 prekkopiruji do 4 prvkoveho pole, kdyz ani
to ne, tak se prekopiruje 4 prvky a vytvori 16 atd... velmi sikovne a rychle, bohuzel trochu zrout pameti..
, ale v tomto pripade, kdy by se alokovalo jen 4byte pole ukazatelu na stringy je to urcite lepsi nez se drbat se zasobnikem
typedef struct {
char *retezec;
radek *dalsi;
radek *predchozi;
} radek;
by melo byt:
typedef struct s_radek {
char *retezec;
struct s_radek *dalsi;
struct s_radek *predchozi;
} radek;
Protoze radek neni tou dobou jeste deklarovan, ale struct s_radek jiz ano.
několik takových struktur je třeba v glib.
gcc umožňuje int foo(int n) { char *p[n]; ... }, ale standardní C bohužel ne.
Jinak je třeba použít malloc/alloca...
Tiskni
Sdílej: