Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.
Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.
Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.
Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.
Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.
Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.
Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.
Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.
Byla vydána nová verze 10.1 sady aplikací pro SSH komunikaci OpenSSH. Uživatel je nově varován, když se nepoužívá postkvantovou výměnu klíčů.
Ahoj,
takže mam niečo takéto:
int img_size[6] ; //tu uložim veľkosť obrazku
img_size[0] = srcimg.width; // = 1414
img_size[1] = srcimg.height; // = 1060
float image_ar [img_size[0]*img_size[1]][4];
skompiluje to ale pri spustení hodí "Chyba segmentacie..."
Ak to tak dam číslo, teda
float image_ar [3145728][4];
tak ten array vytvorí. V čom by to mohlo byť?
Řešení dotazu:
Doplnujúca otázka:
urobil som niečo takéto:
float * image_ar;
int ar_size = img_size[0]*img_size[1]*4; //pomocná premenna, lebo v nasl riadku nechcelo brať vzorec ???
image_ar = new float [ar_size];
toto skompilovalo aj zbehlo bez problémov, "new" by malo hodiť výnimku keby neprebehlo, pokiaľ viem...
lenže ja nechcem jednorozmernú array ale dvoj alebo trojrozmernú... čo s tým?
float (*image_ar)[4]; image_ar = new float[img_size[0]*img_size[1]][4]; ... delete [] image_ar;
Případně si rozmyslete, jestli by z těch čtyř floatů nebylo rozumnější udělat strukturu nebo třídu.
-std=c++98
, takže ani tam asi nebude problém. Problém je s velikostí toho pole - s hodnotami, které uvádí tazatel, se nemá šanci vejít na zásobník (a nevejde se tam ani s tou konstantou, kterou uvádí v dotazu). Pokud ale šířku a výšku dám např. 100, program se spustí a správně funguje. Takže řešením nakonec opravdu je dynamická alokace, i když z trochu jiného důvodu.
Tiskni
Sdílej: