Dětem začala škola a nedobrovolně se tak musí vzdělávat. Avšak pro dospělé, kteří se chtějí vzdělávat nebo naopak se o vědomosti podělit, je tu Virtuální Bastlírna - jako každý měsíc si můžete online a zdarma nezávazně popovídat o vědě a technice nejen s bastlíři, ale i s vývojáři, vědci nebo profesory. A čemu se strahováci budou věnovat? Blíží se KiCAD 11 s nespočtem novinek, z nichž zde musí zmínit alespoň možnost kótování a závislostí z
… více »Asahi Linux, tj. Linux pro Apple Silicon, oficiálně podporuje čipy M3 (M3, M3 Pro a M3 Max).
Společnost Acer oslavila 50 let. Na tiskové konferenci next@acer představila řadu novinek. Vypíchnout lze přenosný ePaper displej Acer EP130K, přenosné řešení se třemi displeji Acer PD163Q P3 nebo herní handheld a notebook v jednom DualPlay Mini.
Server SiFive BigSky SF-2U870 2U je založený na jádře SiFive P870-D, zatím je naintegrovaných 32 jader 256 GB RAM 2 GHz, škálovat lze do 256 jader na čip. O něco podrobnější popis serveru v článku SiFive BigSky Ships the First RISC-V Server. Is the GPU Head Node the Prize? na futurumgroup.com. Asi ani tento čip nebude na úrovni nejlepších 64-bit ARMů a AMD Zenů, ale splňuje RVA23 specifikaci a je podporovaný Ubuntu 26.04 LTS a RHEL 10. V článku je
… více »Na YouTube lze zhlédnout nový celovečerní dokumentární film The Story of VS Code | Official Documentary věnovaný Visual Studio Code.
Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 26.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
Byla vydána nová stabilní verze 8.2 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 152. Přehled novinek i s náhledy v příspěvku na blogu.
Byla vydána nová stabilní verze 4.0 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). S rozhraním přepsaným do Qt. Přehled novinek také na YouTube. Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.
NVIDIA kupuje Hugging Face za 12,93 miliardy dolarů.
#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: