Služba Dropbox Sign (původně HelloSign) pro elektronické podepisování smluv byla hacknuta.
Byla vydána nová major verze 8.0 textového editoru GNU nano (Wikipedie). Podrobný přehled novinek a oprav v oznámení v diskusním listu info-nano nebo v souboru ChangeLog na Savannah. Volbou --modernbindings (-/) lze povolit "moderní" klávesové zkratky: ^C kopírování, ^V vložení, ^Z vrácení zpět, … Tato volba je aktivována také pokud binárka s nano nebo link na ni začíná písmenem "e".
Před 60 lety, 1. května 1964, byl představen programovací jazyk BASIC (Beginners' All-purpose Symbolic Instruction Code).
Byla vydána nová verze 12.0 minimalistické linuxové distribuce (JeOS, Just enough Operating System) pro Kodi (dříve XBMC) a multimediálního centra LibreELEC (Libre Embedded Linux Entertainment Center). Jedná se o fork linuxové distribuce OpenELEC (Open Embedded Linux Entertainment Center). LibreELEC 12.0 přichází s Kodi 21.0 "Omega".
Microsoft vydal novou velkou aktualizaci 2404.23 v září 2019 pod licencí SIL Open Font License (OFL) zveřejněné rodiny písma Cascadia Code pro zobrazování textu v emulátorech terminálu a vývojových prostředích.
OpenTofu, tj. svobodný a otevřený fork Terraformu vzniknuvší jako reakce na přelicencování Terraformu z MPL na BSL (Business Source License) společností HashiCorp, bylo vydáno ve verzi 1.7.0. Přehled novinek v aktualizované dokumentaci. Vypíchnout lze State encryption.
Spouštět webový prohlížeč jenom kvůli nákupu kávy? Nestačí ssh? Stačí: ssh terminal.shop (𝕏).
Yocto Project byl vydán ve verzi 5.0. Její kódové jméno je Scarthgap. Yocto Project usnadňuje vývoj vestavěných (embedded) linuxových systémů na míru konkrétním zařízením. Cílem projektu je nabídnou vývojářům vše potřebné. Jedná se o projekt Linux Foundation.
Operační systém 9front, fork operačního systému Plan 9, byl vydán v nové verzi "do not install" (pdf). Více o 9front v FQA.
Svobodná webová platforma pro sdílení a přehrávání videí PeerTube (Wikipedie) byla vydána v nové verzi 6.1. Přehled novinek i s náhledy v oficiálním oznámení a na GitHubu. Řešeny jsou také 2 bezpečnostní chyby.
dobry den,
mohl by mi nekdo vysvetlit, proc u obou techto kodu je vysledek pokazde jiny? v pripade C je v promenne "c" ulozeno take cislo 2, ktere by tam ale byt nemelo, ze?
v pripade C++ je v "c" ulozeno cislo, ktere je rovne maximalni hodnote int zkracene o prave zadane cislo vzdy o jednu mensi
kod C
#include <stdio.h> int main() { int a; signed int b; unsigned int c; printf("Enter a"); scanf("%d", &a); printf("int=%d",a); printf("Enter b"); scanf("%d", &b); printf(" signed=%d",b); printf("Enter c"); scanf("%d", &c); printf(" unsigned=%d",c); return 0; }
kod C++
#include <iostream> using namespace std; int main(void) int a; signed int b; unsigned int c; cout << "Enter number a: "; cin >> a; cout << "Enter number b: "; cin >> b; cout << "Enter number c: "; cin >> c; cout << "int = "<< a << ", signed int = " << b << ", unsigned int = "<< c << endl; }
predem dekuji za jakekoli reakce
Řešení dotazu:
[petr@nt ~]$ ./pokus.bin Enter a 2 int=2 Enter b 2 signed=2 Enter c 2 unsigned=2 [petr@nt ~]$ ./pokus.bin Enter a 1 int=1 Enter b 1 signed=1 Enter c 1 unsigned=1 [petr@nt ~]$ ./pokus.bin Enter a 100 int=100 Enter b 100 signed=100 Enter c 100 unsigned=100
[petr@nt ~]$ ./pokus_cpp.bin Enter number a: 2 Enter number b: 2 Enter number c: 2 int = 2, signed int = 2, unsigned int = 2 [petr@nt ~]$ ./pokus_cpp.bin Enter number a: 1 Enter number b: 1 Enter number c: 1 int = 1, signed int = 1, unsigned int = 1 [petr@nt ~]$ ./pokus_cpp.bin Enter number a: 100 Enter number b: 100 Enter number c: 100 int = 100, signed int = 100, unsigned int = 100
int
, long
i long long
je default signed. Jen v případě char
je to složitější a závisí to na dalších okolnostech.
scanf("%u", &c); printf(" unsigned=%u",c);
To má být nějaký kvíz "uhodněte, jak měl znít dotaz"? Za prvé: druhá ukázka nejde přeložit, protože vám tam chybí otevírací levá složená závorka funkce main()
. Za druhé: neuvádíte, na jaké platformě a jakým překladačem jste to překládal. Za třetí (a nejhorší): neobtěžoval jste se ani napsat, s jakým vstupem jste to vlastně testoval. Za čtvrté: tvrdíte, že v proměnné c
je u první ukázky hodnota 2; jak jste na to přišel, když vypisujete něco jiného, než její obsah?
Můj tip je, že jste zadával hodnotu -2, první program vám vypsal třikrát -2 (ne 2, jak tvrdíte) a druhý dvakrát -2 a potřetí něco jako 2^{32}-2. Vysvětlení je takové, že v prvním programu konvertujete zadanou hodnotu (při vstupu) na unsigned int
a pak zase zpátky na int (při volání printf()
). Ve druhém provedete konverzi jen jednou (při zpracování vstupu), u výstupu se použije správná verze operátoru <<
podle typu proměnné. Pokud byste v prvním programu použil u posledního printf()
správný formát %u
, dopadlo by to stejně.
Tiskni Sdílej: