Byla vydána verze 3.0 (Mastodon) nástroje pro záznam a sdílení terminálových sezení asciinema (GitHub). S novou verzí formátu záznamu asciicast v3, podporou live streamingu a především kompletním přepisem z Pythonu do Rustu.
Canonical oznámil, že bude podporovat a distribuovat toolkit NVIDIA CUDA (Wikipedie) v Ubuntu.
Tržní hodnota americké společnosti Alphabet, která je majitelem internetového vyhledávače Google, dnes poprvé překonala hranici tří bilionů dolarů (62,1 bilionu Kč). Alphabet se připojil k malé skupině společností, které tuto hranici pokořily. Jsou mezi nimi zatím americké firmy Nvidia, Microsoft a Apple.
Spojené státy a Čína dosáhly dohody ohledně pokračování populární čínské platformy pro sdílení krátkých videí TikTok v USA. V příspěvku na síti Truth Social to dnes naznačil americký prezident Donald Trump. Dosažení rámcové dohody o TikToku vzápětí oznámil americký ministr financí Scott Bessent, který v Madridu jedná s čínskými představiteli o vzájemných obchodních vztazích mezi USA a Čínou. Bessentova slova později potvrdila také čínská strana.
MKVToolNix, tj. sada nástrojů pro práci s formátem (medialnym kontajnerom) Matroska, byl vydán ve verzi 95.0. Podpora přehrávání formátu Matroska míří do Firefoxu [Bug 1422891, Technický popis]. Přehrávání lze již testovat ve Firefoxu Nightly.
Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 211. sraz, který proběhne v pátek 19. září od 18:00 ve Studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Na srazu proběhne přednáška Jiřího Eischmanna o nové verzi prostředí GNOME 49. Nemáte-li možnost se zúčastnit osobně, přednáškový blok bude opět streamován živě na server VHSky.cz a následně i zpřístupněn záznam.
Microsoft se vyhnul pokutě od Evropské komise za zneužívání svého dominantního postavení na trhu v souvislosti s aplikací Teams. S komisí se dohodl na závazcích, které slíbil splnit. Unijní exekutivě se nelíbilo, že firma svazuje svůj nástroj pro chatování a videohovory Teams se sadou kancelářských programů Office. Microsoft nyní slíbil jasné oddělení aplikace od kancelářských nástrojů, jako jsou Word, Excel a Outlook. Na Microsoft si
… více »Samba (Wikipedie), svobodná implementace SMB a Active Directory, byla vydána ve verzi 4.23.0. Počínaje verzí Samba 4.23 jsou unixová rozšíření SMB3 ve výchozím nastavení povolena. Přidána byla podpora SMB3 přes QUIC. Nová utilita smb_prometheus_endpoint exportuje metriky ve formátu Prometheus.
Správcovský tým repozitáře F-Droid pro Android sdílí doporučení, jak řešit žádosti o odstranění nelegálního obsahu. Základem je mít nastavené formální procesy, vyhrazenou e-mailovou adresu a být transparentní. Zdůrazňují také důležitost volby jurisdikce (F-Droid je v Nizozemsku).
Byly publikovány informace o další zranitelnosti v procesorech. Nejnovější zranitelnost byla pojmenována VMScape (CVE-2025-40300, GitHub) a v upstream Linuxech je již opravena. Jedná se o variantu Spectre. KVM host může číst data z uživatelského prostoru hypervizoru, např. QEMU.
foo -o "x=%x\ny=%y"
a textové části se tisknou fputs(f,stdout);
. Výstupem je tedy x=3\ny=4
.
#include <stdio.h> #include <string.h> int main(int argc, char *argv[]) { while (*(++argv)) { const char *s = *argv, *p; char c; while ((p = strchr(s, '\\'))) { printf("%.*s", p - s, s); s = p+1; if (!(c = *s)) { fprintf(stderr, "String ends with a backslash\n"); break; } switch (c) { case '\\': c = '\\'; break; case '0': c = '\0'; break; case 'a': c = '\a'; break; case 'b': c = '\b'; break; case 'e': c = '\x1b'; break; case 'f': c = '\f'; break; case 'n': c = '\n'; break; case 'r': c = '\r'; break; case 't': c = '\t'; break; case 'v': c = '\v'; break; default: fprintf(stderr, "Unknown escape `%c'\n", c); break; } putchar(c); s++; } puts(s); } return 0; }Lepší by bylo něco, co převede string na string -- což v principu lze i printf() funkcemi, ale je to otrava.
#include <stdio.h> int main() { char buffer[128], *p; sprintf(buffer, "Ahoj\n"); for (p = buffer; *p != '\0'; p++) printf("%02x ", *p); printf("\n"); return 0; }Vypíše se toto:
41 68 6f 6a 0a
#include <stdio.h> int tab[] = { -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, /* \% */'\%', -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,/* \0 */'\0',-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,'\\',-1,-1,-1,-1, /* \a */'\a', /* \b */'\b', -1,-1,/* \e */'\e', /* \f */'\f', -1,-1,-1,-1,-1,-1,-1,/* \n */'\n', -1,-1,-1,/* \r */'\r',-1, /* \t */'\t', -1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, -1,-1,-1,-1,-1,-1,-1,-1,-1 }; char *zpracuj_lomitka(char *str) { unsigned char *a, *b; if (str == NULL) return NULL; for (a = b = str; *a != '\0'; a++, b++) if (*a == '\\' && tab[a[1]] >= 0) *b = tab[*++a]; else *b = *a; *b = '\0'; return str; } int main() { char *p, str[] = "Ahoj!\\a\\b\\e\\f\\n\\r\\t\%\\\\\\0"; for (p = str; *p != '\0'; p++) printf("%02x ", *p); printf("\n"); zpracuj_lomitka(str); for (p = str; *p != '\0'; p++) printf("%02x ", *p); printf("\n"); return 0; }Přepisuje se přímo zdrojový řetězec. Možná to proto hodí segfault (což udělá určitě, když dám místo
str[]
jen *str
), ale ta funkce by měla být jinak v pořádku.
sscanf
mohl pomoci.
Tiskni
Sdílej: