Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 170 (pdf).
Dnes v 16:00 (14:00 UTC) budou opraveny 2 kritické zranitelnosti s CVSS 9.2 v PHP.
Nizozemská policie 13. října 2026 zabavila v datacentru Amsterdam Science Park server italského poskytovatele internetových služeb Autistici/Inventati (A/I), a to na základě americké žádosti o mezinárodní právní pomoc.… více »
Do 26. října do 18:00 běží na Steamu přehlídka nadcházejících her Festival Steam Next | říjen 2026 (YouTube) doplněná demoverzemi, přenosy a dalšími aktivitami. Demoverze lze hrát zdarma.
Čínská technologická společnost DeepSeek zveřejnila na GitHubu svůj framework DeepInfer, nástroj pro efektivní offline inferenci svého modelu DeepSeek-V4.1-Flash ve velkém měřítku. Software běží na Linuxu a nativně podporuje akcelerátory Nvidia ale i čipy Huawei Ascend 950. Jedná se pouze o samotný inferenční engine, ne kompletní produkční službu. Zdrojový kód je dostupný pod licencí Apache 2.0.
Německo-americká společnost Black Forest Labs představila FLUX 3 Image Klein, otevřený model s 5,6 miliardami parametrů pro tvorbu a úpravu obrázků. Dovede pracovat až s deseti referenčními snímky a zvládá generování v rozlišení až 4K, díky své menší velikosti ('klein' v němčině znamená 'malý') je model vhodný pro používání na běžných grafických kartách. Jedná se bohužel o cenzurovaný generativní model, z korpusu byl před trénováním
… více »Bylo vydáno OpenBSD 8.0. Se songem The Simps on AI.
Byla vydána nová verze 25.12.6 linuxové distribuce primárně určené pro routery a vestavěné systémy OpenWrt (Wikipedie). Opravena je řada zranitelností v základních síťových službách, které jsou ve výchozím nastavení aktivní a které lze zneužít na dálku. Důrazně je doporučena aktualizace.
Tiskni
Sdílej:
if (str[strlen(str) - 1] == '\n') str[strlen(str) - 1] = '\0';Lebo:
fgets() reads in at most one less than size characters from stream and
stores them into the buffer pointed to by s.
echo -e "123456"|./check_end_fgets 49 '1' 50 '2' 51 '3' 0 ''Testovací kód:
#include <stdio.h>
#include <stdlib.h>
void check_end_fgets()
{
char buffer[4];
int a;
char *p;
if(fgets(buffer, 4, stdin) == NULL)
return;
for(p=buffer,a=0;a<4 && *p != '\n'; a++,p++)
printf("%d '%c'\n", *p, *p);
}
int main(void)
{
check_end_fgets();
return 0;
}
echo "LLLLLLLLLLLLLL"|./cod upper macro: 7 ctype function: 14Oprav si chybu vo funkcií uppermacro().
((*str++) >= 'A' && (*str++) <= 'Z')
getc() upozornění, že na rozdíl od fgetc() může být implementována jako makro, které argument vyhodnocuje víc než jednou.
cpp source.c -o source_cpp.h
#define myupper(c) ((c) >= 'A' && (c) <= 'Z')
se dá nahradit něčim jako
#define myupper(c) ((unsigned long)(c - 'A') <= 'Z' - 'A')
(ale je to trochu prasárna)
.