Tento týden byla vydána nová verze 1.52 webového prohlížeče Brave (Wikipedie, GitHub). Postavena je na Chromiu 114. Z novinek lze vypíchnout možnost povolit vertikální karty (vertical tabs). Také bylo představeno Brave Search API k vyhledávači Brave Search.
Matthias Clasen z Red Hatu oznámil v diskusním listu vývojářů Fedora Linuxu, že tým Red Hat Display Systems se zaměří na Wayland a podporu HDR na Linuxu a přestane spravovat RPM balíčky pro LibreOffice. V další major verzi RHELu už LibreOffice nebude. Pokud se nenajde správce balíčků pro Fedora Linux, zůstane pouze LibreOffice ve Flatpaku.
Na Steamu lze získat zdarma počítačovou hru Tell Me Why (ProtonDB). Na Epic Games Storu počítačovou hru Midnight Ghost Hunt (ProtonDB).
Společnost Meta představila (YouTube) brýle pro virtuální realitu Meta Quest 3. V prodeji budou na podzim a stát budou od 499,99 dolarů.
Byla vydána nová verze 2.41.0 distribuovaného systému správy verzí Git. Přispělo 95 vývojářů, z toho 29 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
Organizace Apache Software Foundation (ASF) vydala verzi 18 integrovaného vývojového prostředí a vývojové platformy napsané v Javě NetBeans (Wikipedie). Přehled novinek na GitHubu. Instalovat lze také ze Snapcraftu a Flathubu.
Byla vydána verze 1.70.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. Jako reakce na rostoucí obavy z vlivu korporací na vývoj Rustu a předložený návrh restriktivních zásad používání ochranných známek Rustu, byl nedávno představen komunitní fork Rustu se 100 % méně byrokracie: Crab (CrabLang).
Oliver Smith z Canonicalu shrnuje základní vlastnosti „neměnné“ distribuce Ubuntu Core také ve srovnání s protějšky Chrome OS, Fedora Silverblue a MicroOS. Canonical připravuje desktopovou variantu Ubuntu Core vedle dosavadní serverové/embedded.
Z aktualizovaného seznamu chyb (pdf) procesoru AMD EPYC 7002: #1474 - procesor se po 1044 dnech od posledního resetu zasekne [reddit].
Fossil (Wikipedie) byl vydán ve verzi 2.22. Jedná se o distribuovaný systém správy verzí propojený se správou chyb, wiki stránek a blogů s integrovaným webovým rozhraním. Vše běží z jednoho jediného spustitelného souboru a uloženo je v SQLite databázi.
itoa()
opravdu neexistuje...
atoi()
), ale ne v POSIXu ani v dalších rozšířeních glibc; tipoval bych, že jde o pokus přeložit program psaný původně pro nějakou jinou platformu. Takhle to dopadá, když se nepoužívá -Wall
nebo se ignorují varování překladače.
#include <stdio.h> #include <string.h> /* Converts an integer value to a null-terminated string using the specified radix and stores the result in the given buffer. If radix is 10 and value is negative the string is preceded by the minus sign (-). With any other radix, value is always considered unsigned. buffer should be large enough to contain any possible value: (sizeof(int)*8+1) for radix=2, i.e. 17 bytes in 16-bits platforms and 33 in 32-bits platforms. Parameters: value Value to be represented as a string. buffer Buffer where to store the resulting string. radix Numeral radix in which value has to be represented, between 2 and 36. Return Value: A pointer to the string. No error checking is performed. */ char* itoa (int value, char* buffer, int radix) { if ( radix == 10 ) { sprintf (buffer, "%d", value); } else { char tmp_buffer[ sizeof(int)*8 + 1 ]; char *ptr = &tmp_buffer[ sizeof(int)*8 ]; unsigned n = value; *ptr-- = 0; do { *ptr-- = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" [n % radix]; n /= radix; } while ( n ); strcpy (buffer, ++ptr); } } int main () { int value, radix; char buffer[sizeof(int)*8 + 1]; while (1) { printf ("Value (decimal): "); scanf ("%d", &value); printf ("Radix (2 .. 36): "); scanf ("%d", &radix); if ( radix < 2 || radix > 36 ) { printf("Good bye!\n"); return 0; } itoa (value, buffer, radix); printf("Result: %s\n", buffer); } }
#include <stdio.h> #include <string.h> /* Converts an integer value to a null-terminated string using the specified radix and stores the result in the given buffer. If radix is 10 and value is negative the string is preceded by the minus sign (-). With any other radix, value is always considered unsigned. buffer should be large enough to contain any possible value: (sizeof(int)*8+1) for radix=2, i.e. 17 bytes in 16-bits platforms and 33 in 32-bits platforms. Parameters: value Value to be represented as a string. buffer Buffer where to store the resulting string. radix Numeral radix in which value has to be represented, between 2 and 36. Return Value: A pointer to the string. No error checking is performed. */ char* itoa (int value, char* buffer, int radix) { if ( radix == 10 ) { sprintf (buffer, "%d", value); } else { char tmp_buffer[ sizeof(int)*8 + 1 ]; char *ptr = &tmp_buffer[ sizeof(int)*8 ]; unsigned n = value; *ptr-- = 0; do { *ptr-- = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" [n % radix]; n /= radix; } while ( n ); strcpy (buffer, ++ptr); } } int main () { int value, radix; char buffer[sizeof(int)*8 + 1]; while (1) { printf ("Value (decimal): "); scanf ("%d", &value); printf ("Radix (2 .. 36): "); scanf ("%d", &radix); if ( radix < 2 || radix > 36 ) { printf("Good bye!\n"); return 0; } itoa (value, buffer, radix); printf("Result: %s\n", buffer); } }
return buffer;
. Takze nejak takto:
} while ( n ); strcpy (buffer, ++ptr); } return buffer; }
#include <stdlib.h>
a pak už jen
itoa(I,S,i)
kde I je vstupní integer; S výstupní string a i je soustava (2-dvojkova;8-osmičková;10-desítková;16-hexadecimální)
$ grep itoa /usr/include/gentoo-multilib/amd64/stdlib.h $?
Tiskni
Sdílej: