Akční adventura State of Mind je na portále GOG.com zdarma, akce trvá do 10. září.
Na Kickstarteru běží kampaň na podporu malého robotický psa Petoi Quaddle. Postaven je na ESP32-S3. V několika variantách. S řadou senzorů. Programovat lze pomocí Pythonu, C++ nebo i vizuálních bloků. Zkoušet a trénovat lze v simulátoru.
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.
fscanf(fr, "%s %s %s %s %s", &retezec1, &retezec2, &retezec3, &retezec4, &retezec5);Můj problém je, že já potřebuju, aby z každého řetězce bylo načteno pouze 5 prvních znaků. Pokud jich je náhodou víc potřebuju, aby byly za pátým znakem useknuty. Definoval jsem si tedy proměné retezec jako pole 5 charů. Žil jsem v domění, že funkce fscanf automaticky řetězec usekne, ale neděje se tak. Pokud je náhodou řetězec delší program spadne. Je to jednoúčelový program a moc programování nerozumím, proto teď nevím moc jak dál. Dá se nějak funkce fscanf nastavit, aby z každého řetězce přečetla pouze prvních pět znaků do první proměné - poté přeskočila na další řetězec a načetla opět prvních 5 znaků do další proměné a tak dále? Předem děkuju za radu.
Řešení dotazu:
#include <stdio.h>
#include <string.h>
#define STR_MAX 32
#define STR_SIZE 5
#define TO_STR_SIZE "5"
#define WORDS_IN_ROW 5
int main(int argc, char *argv[])
{
FILE *f;
f=fopen("file.txt", "r");
if (f != NULL)
{
char str[WORDS_IN_ROW][STR_SIZE+1];
int i;
for (i=0;i<WORDS_IN_ROW;i++)
{
fscanf(f, "%" TO_STR_SIZE "s", &str[i]);
str[i][STR_SIZE]='\0';
if (i<WORDS_IN_ROW-1)
{
char c;
if ((c=fgetc(f)) != ' ')
{
char tmp[STR_MAX];
fscanf(f, "%s ", &tmp);
}
else
{
ungetc(c, f);
}
}
}
for (i=0;i<WORDS_IN_ROW;i++)
{
printf("%d: %s\n", i, str[i]);
}
fclose(f);
}
return 0;
}
fscanf(fr,"%5c", &retezec);? NN
char retezec1[MAX_LEN], ..., retezec5[MAX_LEN]; fscanf(fr, "%s %s %s %s %s", retezec1, ..., retezec5); retezec1[5] = ... = retezec5[5] = '\0';C uz jsem dlouho neuzival, ale maji tam skutecne byt ty &?
if (strlen(s) > 5) s[5] = '\0';A nezapomenout pak uvolnit pomocí free().
Tiskni
Sdílej: