Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.
Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.
Apple představil iPhone 17e a iPad Air s čipem M4.
Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.
Byla oznámena spolupráce GrapheneOS s Motorolou. Podrobnosti v tiskové zprávě. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 26.2.1. Přehled novinek v Changelogu.
Volí se dvě místa v Radě openSUSE. Seznamte se se čtyřmi kandidáty. Členové projektu openSUSE mohou hlasovat od 1. do 8. března. Výsledky budou oznámeny 9. března.
Společnost OpenAI uzavřela dohodu s americkým ministerstvem obrany o poskytování technologií umělé inteligence (AI) pro utajované sítě americké armády. Firma to oznámila několik hodin poté, co prezident Donald Trump nařídil vládě, aby přestala využívat služby společnosti Anthropic.
Technologická společnost Anthropic v noci na dnešek oznámila, že se obrátí na soud kvůli rozhodnutí ministerstva obrany označit ji za bezpečnostní riziko dodavatelského řetězce poté, co nevyhověla jeho požadavkům týkajícím se používání umělé inteligence (AI). Prezident Donald Trump krátce před tím uvedl, že nařídil federálním úřadům postupně ukončit využívání jejích AI technologií. Spor mezi firmou vyvíjející chatbot Claude a
… více »Zemřel Rob Grant, spolutvůrce kultovního sci-fi seriálu Červený trpaslík.
#include <iostream>
#include <fstream>
using namespace std;
int main() {
// otevreni pro cteni i zapis
fstream *dbFile = new fstream("file.txt", ios::in | ios::out | ios::binary);
if (!dbFile->is_open()) { // soubor nelze otevrit
cout << "Creating file" << endl;
dbFile->open("file.txt", ios::out | ios::binary); // vytvoreni souboru
if (!dbFile->is_open()) {
cout << "Cannot create file" << endl;
return 0;
}
dbFile->close();
// otevreni pro cteni i zapis
dbFile->open("file.txt", ios::in | ios::out | ios::binary);
if (!dbFile->is_open()) {
cout << "Cannot open file after create" << endl;
return 0;
}
if (!dbFile->write("AABB", 4))
cout << "Cannot write to file" << endl;
dbFile->close();
}
else
cout << "Opening file" << endl;
delete dbFile;
return 0;
}
#include <fstream>
using namespace std;
int main()
{
// jako fopen(..., "r+") => O_RDRW
fstream *dbFile = new fstream("file.txt", ios::in | ios::out);
if (!*dbFile) {
dbFile->clear();
// jako fopen(..., "w+") => O_RDRW | O_TRUNC | O_CREAT
dbFile->open("file.txt", ios::in | ios::out | ios::trunc);
}
if (!*dbFile) {
perror("file.txt");
return 1;
}
if (!dbFile->write("AAXB", 4)) {
perror("writing to file.txt");
return 1;
}
dbFile->close();
delete dbFile;
return 0;
}
delete dbFile; i při chybě (nebo mít dbFile na zásobníku...). Ale podstatné je to volání dbFile->clear() a to, že dbFile->open() stačí volat dvakrát.
Dík.
twofish uz te zrejme uspokojil:). jen bych dodal pro inspiraci jine reseni:
#include <iostream>
#include <fstream>
using namespace std;
namespace {
const string JMENO = "file.txt";
}
int main() {
fstream test;
test.exceptions ( ifstream::eofbit | ifstream::failbit | ifstream::badbit );
try {
test.open ( JMENO.c_str(), ios::in | ios::out | ios::binary | ios::trunc);
}
catch (ifstream::failure &e) {
cerr << e.what() << ":"<< endl;
perror ("Vyjimka otevreni/cteni ze souboru.");
exit(1);
}
return 0;
}
Tiskni
Sdílej: