Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
Byla vydána nová verze 7.0 linuxové distribuce Parrot OS (Wikipedie). S kódovým názvem Echo. Jedná se o linuxovou distribuci založenou na Debianu a zaměřenou na penetrační testování, digitální forenzní analýzu, reverzní inženýrství, hacking, anonymitu nebo kryptografii. Přehled novinek v příspěvku na blogu.
Vývojáři postmarketOS vydali verzi 25.12 tohoto před osmi lety představeného operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME Shell on Mobile, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 0.41.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 6.1 nebo novější a také libplacebo 6.338.2 nebo novější.
Byla vydána nová verze 5.5 (novinky) skriptovacího jazyka Lua (Wikipedie). Po pěti a půl letech od vydání verze 5.4.
Byla vydána nová verze 5.4.0 programu na úpravu digitálních fotografií darktable (Wikipedie). Z novinek lze vypíchnout vylepšenou podporu Waylandu. Nejnovější darktable by měl na Waylandu fungovat stejně dobře jako na X11.
Byla vydána beta verze Linux Mintu 22.3 s kódovým jménem Zena. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze, že nástroj Systémová hlášení (System Reports) získal mnoho nových funkcí a byl přejmenován na Informace o systému (System Information). Linux Mint 22.3 bude podporován do roku 2029.
GNU Project Debugger aneb GDB byl vydán ve verzi 17.1. Podrobný přehled novinek v souboru NEWS.
Josef Průša oznámil zveřejnění kompletních CAD souborů rámů tiskáren Prusa CORE One a CORE One L. Nejsou vydány pod obecnou veřejnou licenci GNU ani Creative Commons ale pod novou licencí OCL neboli Open Community License. Ta nepovoluje prodávat kompletní tiskárny či remixy založené na těchto zdrojích.
Nový CEO Mozilla Corporation Anthony Enzor-DeMeo tento týden prohlásil, že by se Firefox měl vyvinout v moderní AI prohlížeč. Po bouřlivých diskusích na redditu ujistil, že v nastavení Firefoxu bude existovat volba pro zakázání všech AI funkcí.
Ahoj
potrebujem dostať parameter programu, odovzdať ho funkcii a spojiť ho s iným stringom. Je to vlastne názov pôvodného súboru ku ktorému sa ma pripojiť koncovka a pod týmto menom sa ma uložiť nový obrázok.
Mám toto:
int main(int argc, char** argv)
{
int poc_obr=argc-1;
char* filename;
for (n=0;n<poc_obr;n++) {
//opening image
filename = argv[n+1];
CImg<unsigned char> srcimg(filename) ; // toto funguje
savemask (,,,*filename); // tu ten názov predávam
}
}
void savemask (,,,char filename) {
char finalname[20]; // finalny nazov obrazka
strcat(finalname, const char* filename); // =riadok 124
strcat(finalname, "_mask.jpg");
mask_img.save(finalname);
}
kompilacia:
cphix-0h.cpp: In function ‘void savemask(mydata&, int*, int, char)’:
cphix-0h.cpp:124: error: expected primary-expression before ‘const’
Hľadal som už aj na nete, skušal som už veľa možností, ale zjavne mi chýba hlbšie pochopenie...
Vďaka za pomoc...
filename[20] ako buffer).
mato@foxi:(~/lair/filename)$ ./atest picture picture02
DEBUG: working on picture
DEBUG: new file: picture_mask.jpg
DEBUG: working on picture02
DEBUG: new file: picture02_mask.jpg
mato@foxi:(~/lair/filename)$
osobne by som ti ale odporucil prejst nejaku C/C++ ucebnicu; aspon zbezne
string filename,newfilename;
while ( a < argc) {
filename =argv[a];
newfilename=filename+"_mask.jpg";
......
}
Nemam tu teraz ten môj rozpracovaný program, ale urobil som si skúšobný program a funguje to. Aj ked dosť dlho som sa s tým cez den mordoval a nezdá sa mi že som prehliadol takéto triviálne riešenie... Overim to zajtra...
+ v takom vyzname, ako si ho pouzil ty
nevidim ti do kodu a problemu co riesis, na tvoju otazku som ti teda odpovedal v C
ale nemyslim si, ze by to bolo nejak zlozite .. i ten operator + v C++ je zadef. tak, ze musi vytvorit space pre novovzniknuty string - niekde sa ta sprava pamati musi udiat .. v C++ ju vsak v tomto pripade nevidis
problem je že funkcia ktorú potrebujem:
CImg<unsigned char> srcimg(filename) ;
neberie filename ak je definované ako string, stažuje sa:
/usr/include/CImg.h:6992: note: candidates are: cimg_library::CImg<T>::CImg(const T*, unsigned int, unsigned int, unsigned int, unsigned int, bool) [with T = unsigned char]
preto som filename mal definované ako :
char* filename;
ale potom mám problem to prenášať medzi funkciami. Mne by vyhovovalo narábať s filename ako so stringom, kvôli upravam, ale potom to potrebujem predať CImg<unsigned char> ako char....
char *char_filename=new char[filename.size()+1] ; char_filename[filename.size()]=0; memcpy(char_filename,filename.c_str(),filename.size());Tak ako som to popísal výššie, pre CImg to budem konvertovať na char a inak to bude string. Teda tu konverziu som samozrejme našiel na nete. V každom prípade vďaka za pomoc...
Tiskni
Sdílej: