Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.
1/1
Na této stránce jsou k dispozici zdrojové soubory, které jsem vytvářel při výkladu během výuky. Nejsou to ukázkové a bezchybné zdrojové soubory. Ba naopak, jsou to pracovní neučesané verze, které vznikaly interaktivně ve výuce, často s cílem ukázat, že "takto se to nemá".
1 /*
2 * Soubor: 20120315-Thu-standr-knih.c
3 * Datum: 15.03.2012 08:38
4 * Autor: Marek Nožka, nozka <@t> spseol <d.t> cz
5 * Licence: GNU/GPL
6 * Úloha: ukázky funkcí standardní knihovny
7 ****************************************************/
8 #define _ISOC99_SOURCE
9 #define _GNU_SOURCE
10 #include <stdio.h>
11 #include <stdbool.h>
12 #include <ctype.h>
13 #include <wctype.h>
14 #include <math.h>
15 #include <locale.h>
16 #include <time.h>
17
18 /* *************** Makra ******************** */
19 #define ARREYC 1024
20
21 /* *************** Funkce ******************** */
22
23
24 /****************************************************
25 * Hlavní program.
26 ****************************************************/
27 int main(void) {
28
29 // stdbool.h pravdivostní datový typ
30 bool logika;
31 logika = true;
32 printf("%d\n",logika);
33 logika = false;
34 printf("%d\n",logika);
35 printf("bool má velikost %ld byte\n",sizeof(bool));
36 /////////////////////////////////////////////////////////
37 // ctype.h práce se znaky
38 char s[] = "Moje výplata je 12345 grošíků";
39 int i;
40 for (i=0; s[i]!=0 ; i++) {
41 putchar(s[i]);
42 putchar(toupper(s[i]));
43 putchar(tolower(s[i]));
44
45 printf(" (je to velké písemoho? %d) ", isupper(s[i]) );
46 printf(" (je to číslice? %d) ", isdigit(s[i]) );
47
48 putchar('\n');
49 }
50 putchar('\n');
51 //////////////////////////////////////////////////////////
52 // math.h
53 printf("%.20lg\n",M_PI);
54 printf("sunu 30° %lg\n", sin( 30*M_PI/180));
55 printf("fmod(12.12345,10) = %lf\n", fmod(12.12345,10));
56 printf("fabs(-12.12345) = %lf\n", fabs(-12.12345));
57
58 putchar('\n');
59 //////////////////////////////////////////////////////////
60 // locale.h
61 setlocale(LC_ALL, "");
62
63 if ( iswupper(L'Č') ) {
64 printf("je to VELKE\n");
65 } else {
66 printf("je to male\n");
67 }
68
69 //////////////////////////////////////////////////////////
70 // time.h http://www.sallyx.org/sally/c/c20.php
71
72 time_t sekundy = time(NULL);
73 printf("%ld\n",sekundy);
74
75 struct tm *cas;
76 cas = localtime( &sekundy );
77
78 printf(" %d. %d. %d\n",cas->tm_mday, cas->tm_mon+1, cas->tm_year+1900);
79
80
81 }