Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.
Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.
Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.
Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.
Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinek a poznámkách k vydání.
Příspěvek na blogu Truffle Security: Kdokoli může přistupovat ke smazaným a privátním repozitářům na GitHubu.
Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.
Byla vydána verze 1.80.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.
Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.
#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.
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.
Tiskni
Sdílej: