Dolphin (Wikipedie), tj. open source multiplatformní emulátor herních konzolí GameCube a Wii od Nintenda, byl vydán ve verzi 2606. S podporou Game Boy Playeru.
Vasudeva Kamath představil utilitu debvulns, alternativu k nativní utilitě debsecan, pro výpis zranitelností v Debianu. Navíc má především možnost výstupu ve strukturovaných formátech JSON a CSV. V plánu je exportér pro Prometheus.
Oficiální český státní eshop s elektronickými dálničními známkami nově najdete na edalnice.gov.cz. Doména gov.cz jasně potvrzuje, že jste na oficiálním státním webu [𝕏].
Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem se nově stal čínský LineShine v Národním superpočítačovém centru v Šen-čenu (NSCS) s výkonem 2,198 exaFLOPS. Z prvního místa sesadil americký superpočítač El Capitan s výkonem 1,809 exaFLOPS. Nejvýkonnější český počítač C24 klesl na 215 místo. Karolina, GPU partition klesla na 249. místo a Karolina, CPU partition na 475. místo.
… více »Zemřel průkopník videoherní hudby Bobby Prince (Wikipedie). Složil hudbu pro hry Wolfenstein 3D, Doom, Doom II, Duke Nukem II a Duke Nukem 3D.
Počítačová hra Operace Flashpoint (Arma: Cold War Assault) od společnosti Bohemia Interactive slaví 25 let. Při této příležitosti bylo publikováno bezplatné hratelné Arma: Cold War Assault Remastered Demo a na GitHubu byly zveřejněny zdrojové kódy.
Na trh v České republice přichází HP EliteBoard G1a. Jde o plnohodnotný AI počítač integrovaný přímo do těla klávesnice, tedy zařízení, které na první pohled vypadá jako minimalistická klávesnice, ale ve skutečnosti nahrazuje klasickou počítačovou jednotku.
V lednu bylo oznámeno, že desktopové prostředí Xfce bude mít vlastní kompozitor pro Wayland s názvem xfwl4. O víkendu byla vydána první preview verze.
Minulý týden byl oficiálně vydán Android 17. Detaily na blogu a stránkách věnovaných vývojářům.
/*Pri prekladu zakomentovat podle potreby*/
#define OS_LINUX_OPT
#define OS_LINUX_USR_LOCAL
#define OS_LINUX_USR
#define OS_WINDOWS
char* grabFile(char* filespec) {
char p[256];
#ifdef OS_LINUX_USR
strcat(p,"/usr/local/myprogram/");
strcat(p,filespec);
#endif
#ifdef OS_WINDOWS
strcat(p,getProgramDirectory());
strcat(p,"\\");
strcat(p.filespec);
#endif
return p;
}
(Priznavam,ze tento kod neni bezpecny, snadno lze zpusobit preteceni)
... a tak nejak. Prikladem podobneho ucinneho vyuziti preprocesoru
jsou zdrojove kody ke hre Wolfenstein 3D.
$HOME, což může představovat vše od /home/vyskocil/usr/program v práci, až po /homes/eva/xv/xvysko02/usr/program ve škole
.
getProgramDirectory(), kterou si ovsem musite napsat.A pak je opravdu jedno, kde ten program je.
Tudiz si zavedeme: OS_LINUX_ANYWHERE
char* grabFile(char* filespec) {
char p[256];
#ifdef OS_LINUX_ANYWHERE
strcat(p,getProgramDirectory());
strcat(p,"/");
strcat(p,filespec);
#endif
return p;
....
}
getProgramDirectory() proste vezme nulty parametr prikazove radky
a odsekne z nej vse za poslednim lomitkem a je to. Tak se program
najde, at uz je kdekoliv.
namespace fs = boost::filesystem;
// inicializace cesty
fs::path tmpPath( FileOption, fs::native );
// pokud cesta neni kompletni
// (neobsahuje C:\ nebo "/root/..")
// pripoj pracovni adresar (workingDir)
File = tmpPath.is_complete()
? tmpPath
: workingDir/tmpPath; //spojeni cest
if( !fs::exists( File ) )
{
std::cerr << "\nerror: File "
<< File.string()
<< "\ndoes not exist.\n";
return 1;
}
else if( fs::is_directory( File ) )
{
std::cerr << "\nerror: Argument for the file "
<< File.string()
<< "\nis a directory.\n";
return 1;
}
samozrejme v cestach k souborum bude potreba zmenit lomitka za zpetna lomitkaTo je pěkná blbost.
Tiskni
Sdílej: