Google Blog ČR informuje, že mobilní aplikaci Gemini a NotebookLM lze používat už také v Česku.
Byla vydána nová major verze 8 duálně licencovaného open source frameworku JUCE (Wikipedie, GitHub) pro vývoj multiplatformních audio aplikací.
Od 18. června bude možné předobjednat notebook DC-ROMA RISC-V LAPTOP II od společnosti DeepComputing s osmijádrovým 64-bit RISC-V AI CPU a s předinstalovaným Ubuntu.
Byla vydána verze 1.79.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání na GitHubu. Vyzkoušet Rust lze například na stránce Rust by Example.
Byly zveřejněny výsledky průzkumu (infografika) mezi uživateli FreeBSD.
Na konferenci DevConf.CZ 2024 je na stánku Furi Labs prezentován linuxový telefon FuriPhone FLX1. Jeho cena 499 dolarů.
Bylo vydáno Eclipse IDE 2024-06 aneb Eclipse 4.32. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.
Proton, tj. fork Wine integrovaný v Steam Play a umožňující v Linuxu přímo ze Steamu hrát hry určené pouze pro Windows, byl vydán ve verzi 9.0-2 (𝕏). Přehled novinek se seznamem nově podporovaných her na GitHubu. Aktuální přehled her pro Windows běžících díky Protonu také na Linuxu na stránkách ProtonDB.
Po roce od vydání verze 15.5 bylo vydáno openSUSE Leap 15.6. Přehled novinek v nejnovější verzi této linuxové distribuce v oznámení o vydání a v poznámkách k vydání.
Byla vydána nová verze 256 správce systému a služeb systemd (GitHub). Nově mimo jiné s run0 jako alternativou k sudo.
int str2int(string value) { int number; if(sscanf(value.c_str(), "%d", &number) == EOF) { cerr << "Input file is not in correct format" << endl; exit(EXIT_FAILURE); } return number; }Ta funguje v poradku, pokud prevadim napr. "123", pokud do teto funkce ale poslu napriklad retezec "xxx", vrati mi nejake zaporne cislo (misto toho, aby skoncila chybou). Jak tedy mohu tuto funkci opravit, aby mi v pripade nevalidniho vstupu tuto skutecnost opravdu zahlasila?
Řešení dotazu:
number
na hodnotu, ktorú to má vrátiť, keď sa vstup na číslo skonvertovať nedá. Alebo výsledok sscanf()
kontroluj nielen na EOF ale aj na nulu.
sscanf()
a bude ti to jasné hned. Zřejmě je chybou ji testovat na konstantu EOF
, když na konec souboru nenarazila.
V jakém je to vlastně jazyku?
==EOF
bude <=0
, tak by to mělo fungovat.
Na příkladu je vidět, jak nebezpečné může být používání neinicializovaných proměnných.
<1
, pokud očekávám jednu hodnotu, <3
, pokud očekávám 3 hodnoty apod.
!= 1
, to je přesnější.C++
, ne jen C+
, tak by to mohlo být třeba takto:
int str2int(std::string value) { std::istringstream iss(value); int number; if((iss >> number).fail()) { std::cerr << "The input number is in a invalid format" << std::endl; exit(3);//or throw a exception… } return number; }
Tiskni Sdílej: