Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 9.00. S podporou architektury AArch64 (ARM64).
Společnost Fairphone stojící za stejnojmennými mobilními telefony představila (pdf) bezdrátová špuntová sluchátka Fairbuds 2. Opravitelná, s vyměnitelnými bateriemi a tříletou zárukou. Cena 119 eur.
O víkendu 17. a 18. října lze na brněnském výstavišti navštívit s jednou vstupenkou dvě akce: Maker Faire Brno, festival inovací, kreativity a kutilství, a GameDev Connect, akci určenou pro všechny současné a hlavně budoucí herní vývojáře.
Canonical vydal (email) Ubuntu 26.10 Stonking Stingray. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2027.
České Radiokomunikace (CRA) ve čtvrtek odstřelily rozhlasový vysílač Liblice B, dosud nejvyšší stavbu v Česku. O demolici dvou 355 metrů vysokých stožárů rozhodly z důvodu jejich nevyužívání, už v úterý přitom zhasly a demontovaly jejich osvětlení.
Microsoft Defender nově podporuje linuxové desktopy.
Oficiální Epic Games Launcher je v nové preview verzi poprvé dostupný i pro Linux (FAQ). Pracuje se na novém Easy Anti-Cheatu pro Linux (EAC Linux v2) a podpoře hry Fortnite na Linuxu.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.8. Novinky zahrnují lepší podporu vzdálené plochy, sdílení a nahrávání obrazovky a řadu drobností napříč uživatelským rozhraním (úplný seznam změn, shrnutí ve wiki).
Apple představil 7palcový displej Apple HomeView s podporou Apple Intelligence a Siri AI pro ovládání chytré domácnosti, novou řadu vybavení chytré domácnosti Apple Home Collection, další generaci HomePodu mini a novou Apple TV 4K. Apple HomeView není v Evropské unii v prodeji, jelikož umělá inteligence Siri v rámci systému iOS v EU momentálně není k dispozici. Apple spolupracuje s EU a snaží se najít cestu, jak situaci vyřešit.
KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.
ls -l >data.txt
sh p2.exe
-obsah souboru p2.exe
main()
{
char radek[100];
char pismeno;
float soucet,nasobek;
int i;
FILE *fd;
FILE *fw;
if((fd=fopen("data.txt","r"))==NULL) return;
if((fw=fopen("SOUHRN.txt","w"))==NULL) return;
soucet=0;
printf("Zadejte pismeno, na ktere maji zacinat soubory:\n");
scanf("%c", &pismeno);
while(!feof(fd)) /* vypis souboru */
{
fgets (radek,100,fd);
if(radek[56] == pismeno){
printf("%s\n",radek);
fprintf(fw,"%s", radek);
i=42;
nasobek=1;
while ((i-- > 30) && (radek[i] != ' ')){
soucet+=(radek[i]-48)*nasobek;
nasobek*=10;
}
}
}
fclose(fd);
fclose(fw);
getchar();
system("pause");
}
<pre> a </pre> tagy.
#include<stdio.h>
sh p2.exe ti nebude fungovat. Jednak je v unixech koncovka exe zbytečná a druhak se ten soubor spustí ./p2 (./p2.exe, když už to musí být).$ gcc -c p2.c -o p2.o $ gcc p2.o -o p2.exe $ ls -l >data.txt $ cat data total 16 -rw-r--r-- 1 misak users 0 Jan 3 22:28 SOUHRN.txt -rw-r--r-- 1 misak users 0 Jan 3 22:28 data.txt -rw-r--r-- 1 misak users 744 Jan 3 22:20 p2.c -rwxr-xr-x 1 misak users 7590 Jan 3 22:20 p2.exe -rw-r--r-- 1 misak users 1680 Jan 3 22:20 p2.o $ ./p2.exe Zadejte pismeno, na ktere maji zacinat soubory: p $ cat SOUHRN.txt $Tady jsou změny, které jsem musel udělat:
$ diff p2.c.original p2.c
0a1
> #include<stdio.h>
22c23
< if (radek[56] == pismeno)
---
> if (radek[44] == pismeno)
39c40
< system ("pause");
---
> //system ("pause");
Pokud ti nejede žádný unix, co takhle zkusit cygwin? Nebo vmware player s nějakým nainstalovaným unixem?
.Díky za pomoc, jen k těm změnám: include.., to jsem dodělal, system("pause") odstranil ale co ta "IF", kam s nimi ? Nebo pochopil jsem dobře, že řádek:
if (radek[56] == pismeno)ls -l začínal na 45. sloupci a ne 57., ale teď se dívám, že na CentOS je to taky 56, takže ten řádek raději neměň, pokud ti to funguje
ls -l'. K procházení adresáře slouží opendir(), readdir() a closedir(), případně, nechce-li se tazatel zabývat přenositelností, lze uvažovat o použití scandir().
ls -l. Sice je to přitažené za vlasy, ale některá zadání taková bývají.
radek[56], aniž by se ověřilo, že je řádek aspoň tak dlouhý, což zrovna hned první nebude. Sice je to ve staticky alokovaném bufferu, takže nehrozí pád programu nebo zneužití, ale to, zda se bude první řádek kopírovat nebo ne, je de facto dáno náhodou. Také je podivné, že se celou dobu něco sčítá do proměnné soucet (proč je vlastně typu float?), ale hodnota se nikde nepoužije. Rozumnější verze programu by mohla vypadat např. takto:
#include <stdio.h>
#include <sys/types.h>
#include <dirent.h>
#include <sys/stat.h>
#include <unistd.h>
#include <string.h>
int main(int argc, char* argv[])
{
DIR* dir;
struct dirent* de;
struct stat info;
unsigned long long size;
size_t prefixlen;
const char* pgmname;
const char* p;
int R;
pgmname = argv[0];
for (p=argv[0]; *p; p++)
if (*p == '/') pgmname = p+1;
if (argc < 2) {
fprintf(stderr, "usage: %s directory [prefix]\n", pgmname);
return 1;
}
if (argc == 3) prefixlen = strlen(argv[2]);
else prefixlen = 0;
dir = opendir(argv[1]);
if (!dir) {
perror(pgmname);
return 2;
}
R = chdir(argv[1]);
if (R < 0) {
perror(pgmname);
return 3;
}
size = 0;
while ((de = readdir(dir)))
if (prefixlen==0 || !strncmp(de->d_name, argv[2], prefixlen)) {
stat(de->d_name, &info);
if (S_ISREG(info.st_mode)) {
size += info.st_size;
puts(de->d_name);
}
}
closedir(dir);
printf("Total size: %llu\n", size);
return 0;
}
.
No, co se týká toho školního servru
, ono něco takového asi existovat bude
, jenže já to mám jako volitelňák, takže jsem tam byl jen na jedné čtyřhodinovce, takže jsem to info asi ňako nezaznamenal
ls, nastavení locale a přesném vyvážení mnoha dalších okolnostífloat (které nakonec stejně nepoužije)
Tiskni
Sdílej: