. , , ,

,,,

: — ,

#include

#include

#define FA_DIREC 0x10

#define CONTROL '$'

#define OPEN "<174>"

#define CLOSE "<175>"

#define DEFIS "<197>"

#define NUM "<102>"

#define EOLN ' '

#define ITALIC ""

#define BOLD ""

// $$narg=1;

char in[20],x[40],z[80],str[120],img[80];

int empty,befor;

FILE *fdi, *fdo;

int c0num,cnum,inum,nstr,tnum;

int sign,old,expand;

int GetStr()

{

befor = old; old = 1;

if (empty==0)

{

nstr++;

if (fgets(str,80,fdi)==NULL) return(-1);

if (str[0]==0 || str[0]=='n')

{

befor=1;

nstr++;

if (fgets(str,80,fdi)==NULL) return(-1);

if (str[0]==0 || str[0]=='n')

return(2);

else

{ empty=1; return(1); }

}

else

{ old=0; return(0); }

}

else

{

empty=0; old=0; return(0);

}

}

int NoLF()

{

int i;

for (i=0; str[i]!=0; i++)

if (str[i]=='n') break;

str[i]=0;

}

Cat(s,pi,ss)

char s[],ss[];

int *pi;

{

int i;

for (i=0; ss[i]!=0; i++,(*pi)++) s[*pi]=ss[i];

}

void ProcProg()

{

int i,j,n,k;

char xx[120];

strcpy(xx,str);

for (i=j=n=k=0; xx[j]!=0; j++)

{

switch (xx[j])

{

case '<':

case '>': str[i++]=xx[j];

str[i++]=xx[j];

break;

case '/': if (xx[j+1]=='/')

{

k++;

str[i++] = xx[j++];

str[i++] = xx[j];

Cat(str,&i,ITALIC);

}

else

str[i++] = xx[j];

break;

case '"': if (n)

{

Cat(str,&i,BOLD);

str[i++] = xx[j];

}

else

{

str[i++] = xx[j];

Cat(str,&i,ITALIC);

}

n = !n; break;

default: str[i++] = xx[j];

}

}

if (k) Cat(str,&i,BOLD);

str[i]=0;

}

int Proc()

{

int i,j,n,k;

char xx[120];

if (str[0]=='t' && str[1]=='-') fprintf(fdo,"nn");

for (i=0; str[i]!=0; i++) xx[i]=str[i];

xx[i]=0;

for (i=j=n=0; xx[j]!=0; j++)

{

switch (xx[j])

{

case 'n':

case 't':

case ' ': n++; if (n==1) str[i++]=' '; break;

case '-': if (!expand) str[i++]=xx[j]; break;

n=0;

if (xx[j+1]!=0 || xx[j-1]==' ')

Cat(str,&i,DEFIS);

else

str[i++]='-';

break;

case '"': if (!expand) str[i++]=xx[j]; break;

n=0;

if (sign)

Cat(str,&i,CLOSE);

else

Cat(str,&i,OPEN);

sign = !sign; break;

default: n=0; str[i++] = xx[j];

}

}

str[i]=0;

for (i--; i>=0 && str[i]==' '; i--) str[i]=0;

if (str[i]=='-' && str[i-1]!=' ')

{

str[i]=0;

fprintf(fdo,"%s",str);

}

else

fprintf(fdo,"%s%c",str,EOLN);

}

int Copy(ext,num,mode)

char *ext;

int num;

int mode;

{

FILE *fd1;

int n;

sprintf(x,"%s%d.%s",in,num,ext);

puts(x);

if ((fd1=fopen(x,"w"))==NULL) return(0);

fprintf(fdo,"n{ %s }nn",x);

if (mode==1)

{

sprintf(z,"//────────────────────────────────────────────── %sn",x);

fprintf(fd1,"%s",z);

}

if ((mode & 1) && expand) ProcProg();

if (mode!=0) fprintf(fd1,"%sn",str);

if (mode==0)

sprintf(img,"n .%s%d. %s",in,num,str+1);

while ((n=GetStr())!=-1)

{

NoLF();

if ((mode & 1) && expand)

{

fprintf(fd1,"n");

ProcProg();

}

if (n==2 || str[0]==CONTROL || mode==2 && n==1)

{

if (mode==0) fprintf(fd1,"%sn",img);

fclose(fd1);

return(1);

}

if (n==1)

fprintf(fd1,"n");

else

fprintf(fd1,"%sn",str);

}

fclose(fd1);

return(0);

}

char A[]="";

char B[]="";

char Alpha(c)

char c;

{

int i;

for (i=0; A[i]!=0; i++) if (c==A[i]) return(B[i]);

return(0);

}

void keywords()

{

FILE *fdi,*fdo;

int i,j,n;

char cc,out[100];

sprintf(x,"%s0.txt",in);

if ((fdi=fopen(x,"r"))==NULL) return;

if ((fdo=fopen("keys.txt","a"))==NULL) return;

fseek(fdo,0L,2);

while ((cc=getc(fdi)) !=EOF)

{

if (Alpha(cc)==0) continue;

for (i=1,out[0]=cc; (cc=getc(fdi))!=EOF; i++)

{

if (cc ==' ' || (cc=Alpha(cc))!=0)

out[i]=cc;

else break;

}

out[i]=0;

if (i > 2) fprintf(fdo,"%stt%sn",out,in);

}

fclose(fdi);

fclose(fdo);

}

void step()

{

int i,n,mode;

sprintf(x,"%s.000",in);

if ((fdi=fopen(x,"r"))==NULL) return;

sprintf(x,"%s0.txt",in);

if ((fdo=fopen(x,"w"))==NULL) return;

c0num=cnum=inum=tnum=1;

nstr=0;

sign=0;

while((n=GetStr())!=-1)

{

NoLF();

if (n!=0)

fprintf(fdo,"nn");

else

{

mode=0;

if (str[0]==CONTROL) mode=1;

if (str[0]=='┌') mode=3;

if (str[0]=='╔') mode=3;

if (str[0]=='/' && str[1]=='/' && befor) mode=2;

if (str[0]=='#' && befor) mode=2;

for (i=0; str[i]!=0 && befor; i++)

{

if (str[i]==' ') continue;

if (str[i]=='t') continue;

if (str[i]>='a' && str[i]<='z') mode=4;

break;

}

switch(mode)

{

case 0: Proc();

break;

case 3: if (!Copy("TBL",tnum++,2)) return;

break;

case 2: if (!Copy("C",cnum++,1)) return;

break;

case 1: if (!Copy("TXT",inum++,0)) return;

break;

case 4: if (!Copy("C0",c0num++,3)) return;

break;

}

}

}

fclose(fdi);

fclose(fdo);

keywords();

}

void main(int narg, char *argv[])

{

struct ffblk DIR;

int done,i;

expand=0;

if (narg < 2)

{

printf("bk.exe | * [+]n* - n+ - c- - .000n");

exit(0);

}

strcpy(in,argv[1]);

if (narg==3 && argv[2][0]=='+') expand++;

if (in[0]!='*')

{

step();

}

else

{

for (done=findfirst("*.000",&DIR,FA_DIREC); !done; done=findnext(&DIR))

{

if ((DIR.ff_attrib & FA_DIREC) ==0 && DIR.ff_name[0] !='.')

{

strcpy(in,DIR.ff_name);

for (i=0; in[i]!='.'; i++);

in[i]=0;

step();

}

}

}

}


𠠠 BK1

頠 BK1

BK1

񠠠 BK1

BK1

BK1

蠠 BK1

BK1

BK1

BK1

堠 BK1

堠 BK1

BK1

BK1

BK1

򠠠 BK1

BK1

BK1

BK1

BK1

BK1

BK1

ꠠ BK1

ࠠ BK1

ࠠ BK1

렠 BK1

BK21

BK21

頠 BK21

BK21

 BK21

򠠠 BK21

BK21

BK21

BK21

 BK21

ࠠ BK21

䠠 BK21

BK21

ࠠ BK21

񠠠 BK21

BK22

⠠ BK22

BK22

BK22

堠 BK22

𠠠 BK23

BK23

ꠠ BK23

BK23

蠠 BK24

蠠 BK24

蠠 BK24

BK24

BK24

堠 BK24

BK24

堠 BK24

堠 BK24

蠠 BK24

 BK24

BK25

堠 BK25

ࠠ BK25

𠠠 BK25

ࠠ BK25

BK25

BK25

BK25

BK25

BK25

BK25

BK25

BK25

BK25

goto BK31

렠 BK33

BK33

ࠠ BK34

ࠠ BK34

- 蠠 BK35

BK35

蠠 BK35

Ƞ BK35

Ƞ BK35

Ƞ BK35

Π BK35

Π BK35

ࠠ BK35

⠠ BK35

BK35

堠 BK35

⠠ BK35

⠠ BK35

BK35

2 BK35

BK35

㠠 BK35

㠠 BK35

BK37

ꠠ BK37

ꠠ BK37

ꠠ BK37

젠 BK37

蠠 BK37

젠 BK37

ࠠ BK37

젠 BK37

ࠠ BK37

- BK37

ࠠ BK37

ࠠ BK37

BK37

ࠠ BK37

젠 BK37

ࠠ BK37

堠 BK37

BK37

BK41

젠 蠠 BK41

BK41

BK41

BK41

BK41

BK41

BK41

BK41

ࠠ BK41

BK41

堠 BK41

BK41

BK41

void* BK41

-堠 BK41

頠 BK41

󠠠 BK41

ࠠ BK41

BK42

򠠠 BK42

BK43

BK43

BK44

BK46

堠 BK51

BK51

⠠ BK52

ࠠ BK57

BK57

BK57

BK57

堠 BK57

BK57

򠠠 BK61

䠠 BK61

񠠠 BK61

堠 BK61

젠 BK61

堠 BK62

񠠠 BK64

BK64

BK64

񠠠 BK64


1.

─────────────────────────────────────

┌─────┬─────────────────────────────────────────┬───────┐

│─│ 蠠 │-│

││ │ │

├─────┼─────────────────────────────────────────┼───────┤

│ 1 │ () ( ), [], ->, "." │ ────> │

│ 2 │ !, ~, +, - (), ++, --, *, (), │ <──── │

│ │ sizeof, (new,delete - ++) │ │

│ 3 │ .* , ->* - ++ │ ────> │

│ 4 │ *, /, % () │ ────> │

│ 5 │ +, - () │ ────> │

│ 6 │ <<, >> │ ────> │

│ 7 │ <, <=, =>, > │ ────> │

│ 8 │ ==, != │ ────> │

│ 9 │ & () │ ────> │

│ 10 │ ^ │ ────> │

│ 11 │ | () │ ────> │

│ 12 │ && () │ ────> │

│ 13 │ || () │ ────> │

│ 14 │ ?: () │ <──── │

│ 15 │ =, +=, -=, *=, /=, %=, &=, ^=, |=, <<=, │ <──── │

│ │ >>= │ │

│ 16 │ "," () │ ────> │

└─────┴─────────────────────────────────────────┴───────┘

2. main

─────────────────────────────────────────────

// , main

// ,

//

#include

// ┌───────────────

// │ ┌──

main(int narg, char *argv[])

{ for (int i=0; i

>test.exe aaa 100 bbbb

┌──────────┬─────┬─────┬─────┐

│test.exe│aaa│100│ccc│

argv[] └│─────────┴│────┴│────┴│────┘

┌───────┐0 │ │ │ │

│ ───────────┘ │ │ │

├───────┤1 │ │ │

│ ──────────────────────┘ │ │

├───────┤2 │ │

│ ────────────────────────────┘ │

├───────┤3 │

│ ──────────────────────────────────┘

└───────┘


3. -

─────────────────────────────────────────────────

1.

#include

2. " " NULL-

#define NULL 0

#define EOF -1

3. stdio.h

typedef struct

{

...

unsigned flags; // ───────────────┐

char fd; // (handle) │

unsigned char hold; // 렠 │

short bsize; // │

unsigned char *buffer,*curp; │

... // 蠠 │

} FILE; ──── " " │

( ) │

┌─── - , define ───┘

_F_RDWR -

_F_READ -

_F_WRIT -

_F_BUF -

_F_LBUF -

_F_ERR -

_F_EOF -

_F_BIN - ()

_F_IN -

_F_OUT -

_F_TERM -

4.

FILE *fd;

...

if (fd->flags & _F_BIN) ...

5.

┌───────────────────────────────────────────────────────┐

│ #define ferror(pf) ((pf)->flags & _F_ERR) │

│ #define feof(pf) ((pf)->flags & _F_EOF) │

│ #define fileno(pf) ((pf)->fd) │

│ void clearerr(FILE *pf) - _F_EER _F_EOF │

└───────────────────────────────────────────────────────┘

6. () -

-

- -.

extern FILE *stdin, *stdout, *stderr, *stdaux, *stdprn;

──┘ │ │ │ │

─────────┘ │ │ │

─────────────────┘ │ │

───────────────────┘ │

────────────────────────────────────┘

-

main

(stdin - , stdout,stderr - ), -

(stdaux) (stdprn). stdin stdout

>test.exe c:xxxb.dat

│ └─────── stdout

└───────────────── stdin

,

- -

.

7. -

┌───────────────────────────────────────────────────────┐

│ ────────┐ │

│ ────────┐ │ │

│ │ │ │

│ FILE *fopen(char *name, char *mode) - 렠 │

│ │ │

│ └─── NULL │

│ │

│ int fclose(FILE *fd) - 렠 │

│ │ │

│ └─── 0 EOF () │

│ │

│ int fcloseall(void) - 堠 │

│ │ │

│ └─── EOF │

│ │

│ FILE *freopen(char *name, char *mode, FILE *fd) │

│ - │

│ │

│ FILE *tmpfile(void) - 頠 │

│ 젠 │

└───────────────────────────────────────────────────────┘

─────────────────┐

─────────┐ │

────────────┐ │ │

───────────────┐ │ │ │

────────┐ │ │ │ │

┌────┬──────────────────────────────┬───┬───┬───┬───┬───┐

│ r │ e │ + │ - │ - │ 0 │ - │

│ w │ │ - │ + │ + │ 0 │ + │

│ a │ () │ - │ + │ + │EOF│ + │

│ r+ │ () │ + │ + │ - │ 0 │ - │

│ w+ │ () │ + │ + │ + │ 0 │ + │

│ a+ │ () │ + │ + │ - │EOF│ + │

├────┼───────────────────┬──────────┴───┴───┴───┴───┴───┤

│ b │ 堠 │ r,w,a,r+,w+,a+ │

│ t │ 򠠠 │ ..... │

└────┴───────────────────┴──────────────────────────────┘

8. -

┌──────────────────────────────── ────┐ │

│ int fgetc(FILE *fd) - 렠 │

│ int getc(FILE *fd) │

│ int fgetchar(void) - 䠠 │

│ inc getchar(void) │

│ └─── EOF │

│ int ungetc(int ch, FILE *fd) - 렠 │

│ ( ) │

└───────────────────────────────────────────────────────┘

┌─────────────────────────────── ────┐ │

│ int fputc(int ch,FILE *fd) - 렠 │

│ int putc(int ch, FILE *fd) │

│ int fputchar(int ch) - 䠠 │

│ inc putchar(int ch) │

│ └─── EOF │

└───────────────────────────────────────────────────────┘

: -

, -

, 頠

(""- , ).

,

" ",

. -

- -

(,

conio.h)

9. -

┌───────────────────────────────────── ─┐

│ char *gets(char *str) - 䠠 │

│ char *fgets(char *str, int n, FILE *fd) │

│ └── str NULL() │ - │

│ ─┘ │

└───────────────────────────────────────────────────────┘

┌──────────────────────────────────── ─┐

│ char *puts(char *str) - 䠠 │

│ char *fputs(char *str, FILE *fd) │

│ └── str NULL() - │

└───────────────────────────────────────────────────────┘

: -

-

''. 'n'

- (gets - ,

puts )

- (fgets

- , fputs -

( )).

10. -

┌────────────────────────────── ──┐

│ int printf(char *format,...) │

│ - 䠠 │

│ int fprintf(FILE *fd, char *format,...) │

│ - 렠 │

│ int sprintf(char *str, char *format,...) │

│ │ - │

│ └─── EOF │

└───────────────────────────────────────────────────────┘

┌────────────────────────────── ───┐

│ int scanf(char *format,...) │

│ - 䠠 │

│ int fscanf(FILE *fd, char *format,...) │

│ - 렠 │

│ int sscanf(char *str, char *format,...) │

│ │ - │

│ └─── , │

│ , EOF │

└───────────────────────────────────────────────────────┘

. -

, "%" ( ),

- .

頠 , 堠

.   -

-

, -

(

, ).

┌─ ───┐ ┌──────┐

printf("....%***...%***...%***",p1,p2,p3);

│ │ └─>>─│──│──┘

│ └───>>──────│──┘

└─────>>───────────┘

-

([] )

% [][][.][] ────────────┐

│ │ │ ├─ "F" far- │

│ │ │ ├─ "N" near- │

│ │ │ ├─ "h" short │

│ │ │ └─ "l" long │

│ │ │ double ( scanf)│

│ │ ├─ "0" 蠠 │

│ │ ├─ n n 蠠 │

│ │ └─ * │

│ │ 蠠 │

│ ├─ n n ( │

│ │ - ) │

│ ├─ 0n , - 蠠 │

│ └─ "*" 젠 │

│ 蠠 │

├─ "-" │

│ ( - ) │

├─ "+" ("+" "-") │

├─ " " 젠 │

└─ "#" │

("0" -, "0x" -, │

"." - float) char "c" ────────┤

堠 int "d" ────────┤

堠 "i" ────────┤

unsigned "u" ────────┤

unsigned "o" ────────┤

unsigned "x" ────────┤

..F "X" ────────┤

float ***.*** "f" ────────┤

float *.***e*** "e" ────────┤

float *.***E*** "E" ────────┤

蠠 float ("e" "f") "g" ────────┤

float ("E" "F") "G" ────────┤

char * "s" ────────┘

( n,

, n )

10. -

┌──────────────────────────────────── ───┐

│ void rewind(FILE *fd) - │

│  │

│ long ftell(FILE *fd) - │

│ │ 堠 │

│ └── () -1L │

│ int fseek(FILE *fd, long pos, int mode) - │

│ │ │ │ │

│ │ ()─┘ │ │

│ │ ────────┘ │

│ │ SEEK_SET(0) - ࠠ │

│ │ SEEK_CUR(1) - 蠠 │

│ │ SEEK_END(2) - ࠠ │

│ └──── 0 EOF () │

│ int fgetpos(FILE *fd, long *ppos) - ftell,fseek │

│ int fsetpos(FILE *fd, long *ppos) , - │

│ │

└─────────────────────────────────────────────────────────┘

┌─────────────────────────────────── - ──┐

│ int fread(void *buff, int size, int nrec, FILE *fd) │

│ int fwrite(void *buff, int size, int nrec, FILE *fd) │

│ │ │ │ └── 頠 │

│ │ │ └─────────── │

│ │ └─────────────────── 蠠 │

│ └─────────── () │

└─────────────────────────────────────────────────────────┘


4.

─────────────────────────────────────

.

┌───────────────────────────────────────────────────────┐

│ #define _ࠠ │

└───────────────────────────────────────────────────────┘

#define SIZE 100

#define ErrStr " , ..."

:  ࠠ

,

.

┌───────────────────────────────────────────────────────┐

│ #define () __ │

└───────────────────────────────────────────────────────┘

#define FOR(i,n) for(i=0; i

...

FOR(k,20) A[k]=0; // for(k=0; k<20; k++) A[k]=0;

FOR(j,m+2) {...} // for(j=0; j

-

.

┌───────────────────────────────────────────────────────┐

│ #include <_> │

│ #include "_" │

└───────────────────────────────────────────────────────┘

,

define

┌───────────────┬───────────────────────────────────────┐

│ 𠠠 │ 堠 │

├───────────────┼───────────────────────────────────────┤

│ __LINE__ │ , 蠠 │

│ │ │

│ __FILE__ │ , │

│ __DATE__ │ , ࠠ │

│ __TIME__ │ , │

│ __STDC__ │ 1, 򠠠 │

│ │ ANSI-, - │

│ __cplusplus │ 1, ++ (.cpp) │

│ │ - │

└───────────────────────────────────────────────────────┘

define

┌───────────────────────────────────────────────────────┐

│ #undef 𠠠 │

└───────────────────────────────────────────────────────┘

.  

if else

, -

define

┌──────────────────────────┬────────────────────────────┐

│ │ │

├──────────────────────────┴────────────────────────────┤

│ #ifdef 𠠠 #ifndef 𠠠 │

│ ... _1 ... ... _1 ... │

│ #else #else │

│ ... _2 ... ... _2 ... │

│ #endif #endif │

└───────────────────────────────────────────────────────┘

( else )

.  

if else

, ( 0) ( 0)

. elif - else if.

┌───────────────────────┐ ┌───────────────────────┐

│ #if │ │ #if │

│ ... _1 ... │ │ ... _1 ... │

│ #else │ │ #elif │

│ ... _2 ... │ │ ... _2 ... │

│ #endif │ │ #elif │

└───────────────────────┘ │ ... _3 ... │

│ #else │

│ ... _4 │

│ #endif │

└───────────────────────┘

┌───────────────────────────────────────────────────────┐

│ #line "_" │

└───────────────────────────────────────────────────────┘

┌───────────────────────────────────────────────────────┐

│ #error _ │

└───────────────────────────────────────────────────────┘


5.

──────────────────────────────────

"-

" , "" , -

, -

.

1. , ,

int ( void).

myfun() {...} int myfun() {...}

2.

, -

-

.

extern int sum(); //

int sum(); //

... // ,

int sum(c,n) //

int c[],n; // O

{ ... } //

,

-

ࠠ .

.

3. (

),

int

,

extern int What();


6.

────────────────────────────────────────────

1. ( - ctype.h)

───────────────────────────────────────────────────────────

頠 ⠠

, , 1/0.

int isalnum(int c);

// (A-Z,a-z,0-9)

int isalpha(int c);

// (A-Z,a-z)

int isascii(int c);

// ASCII - 0..127

int iscntrl(int c);

// () ASCII -

// 0x00..0x1F 0x7F.

int isdigit(int c);

// (0-9)

int isgraph(int c);

// () ASCII (0x21-0x7E)

int ispunct(int c);

// - (iscntrl isspace)

int isspace(int c);

// - a: (0x20), -

// , , ,

// , (0x09-0x0D)

int isupper(int c);

//

int isxdigit(int c);

// (0-9, A-F, a-f)

int toascii(int c);

// ASCII -

// , 7-

int tolower(int c);

// -

// ( - ).

//

int toupper(int c);

//

2. (

string.h, stdlib.h)

─────────────────────────────────────────────────────

double atof(char *s);

int atoi(char *s);

long atol(char *s);

// ,

//

char *itoa(int v, char *s, int n);

char *ltoa(long v, char *s, int n);

char *ultoa(unsigned long v, char *str, int n);

// ,

// v str n.

// str

char *strcat(char *dst, char *src);

// src dst.

// dst

char *strchr(char *str, int c);

// c str.

// NULL

int strcmp(char *s1, char *s2);

// s1 s2 (

// ). :

// -1 - s1 < s2

// 0 - s1 = s2

// 1 - s1 > s2

char *strcpy(char *dst, char *src);

// src dst.

// dst

int strcspn(char *str, char *slist);

// str ( ),

// slist

char *strdup(char *str);

// str

unsigned strlen(char *str);

// str

char *strlwr(char *str);

// str

// (" - ")

char *strncat(char *dst, char *src, int n);

// n src dst.

// dst

int strncmp(char *s1, char *s2, int n);

// s1 s2 (

// ). n .

// strcmp

char *strncpy(char *dst, char *src, int n);

// n src dst

int strnicmp(char *s1, char *s2, int n);

// , strncmp,

//

char *strnset(char *str, int c, int n);

// n str c

char *strpbrk(char *str, char *slist);

// str, slist.

//

char *strrchr(char *str, int c);

// c str.

//

char *strset(char *str, int c);

// str c

int strspn(char *str, char *slist);

// str ( ),

// slist

char *strstr(char *str, char *ss);

// ss str.

// str NULL

double strtod(char *str, char **endptr);

long strtol(char *str, char **endptr, int n);

// str

// n. endptr -

// ,

// str,

char *strtok(char *str, char *s);

// str. - -

// , -, -

// s.

//

// . str=NULL

//

char *strupr(char *str);

// str

// (" ")

3.

( - conio.h)

───────────────────────────────────────────────────────────

void clreol(void);

//

votd clrscr(void);

//

char *cgets(char *str);

// str

// str[0] -

// str[1] -

// str[2]... -

// &str[2]

int cprintf(char *fmt,...);

// printf,

// , window

int cputs(char *str);

//

int cscanf(char *fmp,...);

// scanf

void delline(void);

// ,

void gotoxy(int x, int y);

// (x,y).

//

// , 1

void highvideo(void);

//

int movetext(int x0,int y0,int x1,int y1,int x, int y);

//

// (x0,y0)(x1,y1)

// (x,y)

void normvideo(void);

//

void textattr(int attr);

// ( )

//

void textbackground(int c);

//

//

void textcolor(int c);

//

void textmode(int c);

//

int wherex(void);

int wherey(void);

//

void window(int x0,int y0, int x1, int y1);

// (x0,y0)(x1,y1)

4. ( - math.h)

──────────────────────────────────────────────────────

int abs(int n); // n

double acos(double x); //

double asin(double x); //

double atan(double x); //

double atan2(double y,double x);

// y/x

double cos(double x); // (x - )

double cosh(double x); //

double exp(double x); //

double fabs(double x); // x

double floor(double x);// x

double fmod(double y,double x);

// y x

double hypot(double y,double x);

// y,x

long labs(dong n); // n

double ldexp(double x, int n); n

// 堠 x * 2

double log(double x); //

double log10(double x);//

double poly(double x, int n, double c[]);

//

// n n-1

// y = c[n]*x + c[n-1]*x + ... + c[1]*x + c[0]

double pow(double y,double x);

// y x

double pow10(int n); // 10 n

double sin(double x); //

double sinh(double x); //

double sqrt(double x); //

double tan(double x); //

double tanh(double x); //

5.

──────────────────────────────────────────────────


7. ASCII

──────────────────────────────────────────

┌───┬───────────┬───────────┬───┬───┬───┬───┬───┬───┐

│ │0 │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │

├───┼───────────┼───────────┼───┼───┼───┼───┼───┼───┤

│ 0 │nul │dle │' '│ 0 │ @ │ P │ ` │ p │

│ 1 │soh │dc1 │ ! │ 1 │ A │ Q │ a │ q │

│ 2 │stx │dc2 │ " │ 2 │ B │ R │ b │ r │

│ 3 │etx │dc3 │ # │ 3 │ C │ S │ c │ s │

│ 4 │eot │dc4 │ $ │ 4 │ D │ T │ d │ t │

│ 5 │enq │nak │ % │ 5 │ E │ U │ e │ u │

│ 6 │ack │syn │ & │ 6 │ F │ V │ f │ v │

│ 7 │bel │etb │ ' │ 7 │ G │ W │ g │ w │

│ 8 │bs │can │ ( │ 8 │ H │ X │ h │ x │

│ 9 │ht │em │ ) │ 9 │ I │ Y │ i │ y │

│ A │lf │sub │ * │ : │ J │ Z │ j │ z │

│ B │vt │esc │ + │ ; │ K │ [ │ k │ { │

│ C │ff │fs │ , │ < │ L │ │ l │ | │

│ D │cr │gs │ - │ = │ M │ ] │ m │ } │

│ E │so │rs │ . │ > │ N │ ^ │ n │ ~ │

│ F │si │us │ / │ ? │ O │ _ │ o │del│

└───┴───────────┴───────────┴───┴───┴───┴───┴───┴───┘

-

Ctrl ,

(, soh - Ctrl+A).

866 - MS DOS

┌───┬───┬───┬───┬───┬───┬───┬───┬───┐

│ │ 8 │ 9 │ A │ B │ C │ D │ E │ F │

├───┼───┼───┼───┼───┼───┼───┼───┼───┤

│ 0 │ │ │ │ │ └ │ ╨ │ │ │

│ 1 │ │ │ │ │ ┴ │ ╤ │ │ │

│ 2 │ │ │ │ │ ┬ │ ╥ │ │ │

│ 3 │ │ │ │ │ │ ├ │ │ │ │

│ 4 │ │ │ │ ┤ │ ─ │ │ │ │

│ 5 │ │ │ │ ╡ │ ┼ │ │ │ │

│ 6 │ │ │ │ │ ╞ │ │ │ │

│ 7 │ │ │ │ │ ╟ │ ╫ │ │ │

│ 8 │ │ │ │ │ ╚ │ ╪ │ │ │

│ 9 │ │ │ │ ╣ │ ╔ │ ┘ │ │ │

│ A │ │ │ │ ║ │ ╩ │ ┌ │ │ │

│ B │ │ │ │ ╗ │ ╦ │ │ │ │

│ C │ │ │ │ ╝ │ ╠ │ │ │ │

│ D │ │ │ │ │ ═ │ │ │ │

│ E │ │ │ │ │ ╬ │ │ │ │

│ F │ │ │ │ ┐ │ ╧ │ │ │ │

└───┴───┴───┴───┴───┴───┴───┴───┴───┘

1251 - MS Windows

┌───┬───┬───┬───┬───┬───┬───┬───┬───┐

│ │ 8 │ 9 │ A │ B │ C │ D │ E │ F │

├───┼───┼───┼───┼───┼───┼───┼───┼───┤

│ 0 │ │ │ │ │ │ │ │ │

│ 1 │ │ │ │ │ │ │ │ │

│ 2 │ │ │ │ │ │ │ │ │

│ 3 │ │ │ │ │ │ │ │ │

│ 4 │ │ │ │ │ │ │ │ │

│ 5 │ │ │ │ │ │ │ │ │

│ 6 │ │ │ │ │ │ │ │ │

│ 7 │ │ │ │ │ │ │ │ │

│ 8 │ │ │ │ │ │ │ │ │

│ 9 │ │ │ │ │ │ │ │ │

│ A │ │ │ │ │ │ │ │ │

│ B │ │ │ │ │ │ │ │ │

│ C │ │ │ │ │ │ │ │ │

│ D │ │ │ │ │ │ │ │ │

│ E │ │ │ │ │ │ │ │ │

│ F │ │ │ │ │ │ │ │ │

└───┴───┴───┴───┴───┴───┴───┴───┴───┘

8. - ++

─────────────────────────────────────────────────

- --

-

(stdio).

1. -

ios -

streambuf -

istream -

ostream -

iostream -

iostream_withassign

-

istrstream -

ostrstream -

strstream -

ifstream -

ofstream -

fstream -

(istream,ostream,iostream) -

.

(istrstream, ostrstream, strstream) -

- ,

.

(ifstream, ofstream, fstream) -

.

2. .

#include // -:

// ios,istream,ostream,iostream

#include // -:

// ifstream,ofstream,fstream

#include //

#include // -:

// istrstream,ostrstream,strstream

3. -.

main:

extern istream cin; //

//

extern ostream cout; // y

//

extern ostream cerr; //

//

// ()

extern ostream cerr; //

//

// ()

4. -

>> () << ()

. -

頠 ()

().

ostream &operator<<(char);

ostream &operator<<(int);

ostream &operator<<(long);

...

ostream &operator<<(char*);

...

istream &operator>>(char&);

istream &operator>>(int&);

istream &operator>>(long&);

...

int n;

double d;

cout << "n=" << n << " d=" << d << "n";

cin >> n >> d;

5. -

#include

class myclass

{

int d1,d2;

...

public:

friend istream& operator>>(istream&, myclass&);

friend ostream& operator<<(ostream&, myclass&);

...

};

istream& operator>>(istream &STR, myclass &DAT)

{

STR >> DAT.d1 >> DAT.d2;

return(STR);

}

ostream& operator<<(ostream &STR, myclass &DAT)

{

STR << "d1=" << DAT.d1 << " d2=" << DAT.d2 << "n";

return(STR);

}

6.

- long

enum ios::io_format

{

skipws = 0x0001, //

left = 0x0002, //

right = 0x0004, //

internal= 0x0008, // ,

//

dec = 0x0010, //

oct = 0x0020, //

hex = 0x0040, //

showbase= 0x0080, //

// (0... 0x...)

showpoint= 0x0100, //

uppercase= 0x0200, // :

// 0X00FF, 0.5E2

showpos = 0x0400, // "+"

scientific= 0x0800, //

fixed = 0x1000, // nnn.mmm

unitbuf = 0x2000, //

stdio = 0x4000 // stdout, stderr

// (flush)

};

ios

long flags(); //

long flags(long); //

// ( )

// ( )

long setf(long); //

// ( 1)

long unsetf(long); //

// ( 1)

long setf(long,long);//

//

//

char fill(); // ()

char fill(char); //

int precision(); //

// float double

int precision(int); //

int width(); //

int width(int); //

static long bitalloc();//

7.

- ,

( <<, >>).

endl //

// 'n' flush

ends // ''

flush //

//

dec // 10

hex // 16

oct // 8

ws //

setbase(int) //

// (0 - 10 - , 8,10,16)

resetiosflasg(long)

//

setiosflags(long)

//

setfill(int) //

setprecision(int)

//

//

setw(int) // -

:

cout << 15 << hex << 15 << setbase(8) << 15;

8.

state,

.

enum ios::io_state

{

goodbit = 0x00, //

eofbit = 0x01, //

failbit = 0x02, //

//

badbit = 0x04, // (,

// ..)

hardfail= 0x08 //

};

ios

int rdstate(); //

int eof(); // eof

int fail(); // badbit | failbit | hardfail

int bad(); // badbit | hardfail

int good(); //

int clear(int=0); // ,

// -

operator void*(); // void*,

// NULL, fail()==1

int operator!(); // 1, fail()==1

if (cout) ... 蠠 if (!cout) ...

9.

ifstream - , istream

ofstream - , ostream

fstream - -, iostream

enum ios::open_mode

{

in = 0x01, //

out = 0x02, //

ate = 0x04, //

app = 0x08, //

trunc = 0x10, //

nocreate=0x20, //

noreplace=0x40, // ,

binary= 0x80 // ("" -

// )

};

( ifstream,ofstream,fstream)

/

ifstream(); //

...

ifstream( //

char *name, // imode

int imode=ios::in,

int prot=filebuf::openprot);

...

ifstream(int fd); // -

// fd

...

ifstream( // ,

int fd,

char *buf, int sz);

...

void ifstream::open(

char *name, //

int imode=ios::in,

int prot=filebuf::openprot);

...

void close(); //

void setbuf(

char *p,int sz);//

int fd(); //

int is_rtl_open(); // 1 -

fstream ss;

if (ss) ... 蠠 if (!ss) ...

-

( istream,ostream iostream)

// ()

//

istream& read( char *p, int n);

istream& read( signed char *p, int n);

istream& read( unsigned char *p, int n);

// ()

//

ostream& write( char *p, int n);

ostream& write( signed char *p, int n);

ostream& write(unsigned char *p, int n);

// -

istream& get( char &p);

istream& get( signed char &p);

istream& get( unsigned char &p);

ostream& put( char c);

// (n-, c-,

// )

istream& get(char *p, int n, char c='n');

// (n-, c-,

// , )

istream& getline(char *p, int n, char c='n');

// n (c - ,

// )

istream& ignore(int n=1, int d=EOF);

// ,

//

int gcount();

//

int peek();

//

istream& putback(char c);

//

enum ios::seek_dir

{

beg = 0, //

cur = 1, //

end = 2 //

};

typedef long streampos;

typedef long streamoff;

istream& seekg(streampos);

istream& seekg(streamoff, ios::seek_dir);

ostream& seekp(streampos);

ostream& seekp(streamoff, ios::seek_dir);

streampos istream::tellg();

streampos ostream::tellp();

10.

- ,

, .

istream, ostream iostream.

(p - , n - ,

mode - )

istrstream(char *p);

ostrstream(char *p, int n, int mode);

// mode = ios::out -

// mode = ios::ate -

strstream (char *p, int n, int mode);

// ios::in -

// ios::out -

// ios::ate -

// seekg -

9. Borland C DOS

────────────────────────────────────────────────

1.

c:bcbinbc -

c:bcbinbc a.c - a.c

c:bcbinbc b.prj - b.prj

2.

. F10 Alt+"Z",

Z - ()

(, Alt+F --> File)

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└──────────────────────────────────────────────────────────────┘

(F1-F10) Shift, Alt Ctrl,

.

3.

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└─│────────────────────────────────────────────────────────────┘

│ ┌─

│ │ NONAMExx.C

┌─┴───────────────┐ │┌

│ New ─────┘│ ( ,

│ Open F3 ──────┘ - )

│ Save F2 ───────

│ Save as... ───────

│ Save all ──────┐

├─────────────────┤ └

│ Change dir... ───────

│ Print ───────

│ DOS Shell ─────── DOS

├─────────────────┤ ( EXIT)

│ Quit Alt+X ───────

└─────────────────┘

Alt+0 - .

, - ,

(Del)

Alt+n - n=1..9

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└───────────────────────────────────────────────────│──────────┘

┌───────────┴───────┐

Shift ──────────── Size/Move Ctrl+F5 │

/ ──── Zoom F5 │

──────────── Cascade │

─────── Tile │

───── Next F6 │

─────────────────── Close Alt+F3 │

─────────────────────── Close all │

: │ │

───────────┐ ├───────────────────┤

( └─ Message │

User screen) ─────────────────────────── Output │

─────────────────── Watch │

(/) ────── User screen Alt+F5 │

────────────── Register │

───────────────────── Project │

───────────── Project notes │

├───────────────────┤

──────────────────── List all Alt+0 │

└───────────────────┘

4.

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└─────│────│───────────────────────────────────────────────────┘

│ ┌──┴─────────────────┐

│ │Find ───

│ │Replace ───

│ │Search again Ctrl+L ───

│ │ │ Find Replace

│ │Go to line number ───

│ │... │

│ │Locate function ───

│ └────────────────────┘

┌─────┴─────────────────┐

│Undo ALT+BkSp ──────

│Redo Shift+Alt+BkSp ──────

├───────────────────────┤ (Clipboard):

│Cut Shift+Del ───

│Copy Ctrl+Ins ───

│Paste Shift+Ins ───

│Clear Ctrl+Del ───

│Copy Example ───

├───────────────────────┤ Help

│Show Clipboard ───

└───────────────────────┘

:

 <-

 ->

 Ctrl <-

 Ctrl ->

" "

砠 " "

󠠠 Ctrl-W

󠠠 Ctrl-Z

PgUp

砠 PgDn

:

蠠 Home

蠠 End

ࠠ Ctrl Home

ࠠ Ctrl End

ࠠ Ctrl PgUp

ࠠ Ctrl PgDn

ࠠ Ctrl-Q B

ࠠ Ctrl-K K

ࠠ Ctrl-Q P

:

/ 蠠 Ins

ࠠ Backspace

ࠠ Del

 Ctrl-T

󠠠 Ctrl-N

󠠠 Ctrl-Y

蠠 Ctrl-Q Y

:

ꠠ Shift + <>

( )

ࠠ Ctrl-K B

ࠠ Ctrl-K K

젠 Ctrl-K T

󠠠 Ctrl-K L

ꠠ Ctrl-K Y

( Ctrl-K R

)

렠 Ctrl-K W

ꠠ Ctrl-K C

ꠠ Ctrl-K V

ꠠ Ctrl-K P

/ ꠠ Ctrl-K H

ࠠ Ctrl-K I

ࠠ Ctrl-K U

:

󠠠 Ctrl-Q L

Esc

Ctrl-Q F

Ctrl-Q A

堠 Tab

5. .

-

, () (.4.6). -

(.c .cpp)

(.obj),

. -

, .

.

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└───────────────────────────────────│──────────────────────────┘

┌┴──────────────┐

┌────────────────────────────────── Open project │

│┌───────────────────────────────── Close project │

││ ├───────────────┤

││ ───────── Add item │

││ ──────── Delete item │

││ ─────────── Local options │

││ ┌─ Include files │

││ ─────┘ └───────────────┘

││

││

│└

└─ .

. - PRJ. -

-

. project -

.

(Del) (Ins). -

.

6.

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└─────────────────│───│────────────────────────────────────────┘

┌───────────────┴─┐ │

│Run Ctrl+F9 ──── "Make"

│... │ │

└─────────────────┘ │

┌─────────────┴─────────┐

┌───────│Compile Alt-F9 │

│┌──────│Make F9 │

││┌─────│Link │

│││┌────│Build all │

││││ ├───────────────────────┤

││││ │Rmove messages ───

││││ └───────────────────────┘ (message)

│││└───

│││

││└────

│└─────

│ (

│ ,

│ , include)

└──────

-

(message),

. message

, .

Enter

, .

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└──────────│───────────────────────────────────────────────────┘

┌──────────┴───────────┐

│... │ ┌─ ,

│Previous error Alt+F7 ──┘ (message)

│Next error Alt+F8 ──── ,

│... │

└──────────────────────┘

7.

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└──────────────────│───────────────────────────────────────────┘

┌─────────────────┴─────┐

│Run Ctrl+F9 ── "Make"

│Programm reset Ctrl+F2 ──

│Goto cursor F4 ────┐

│Trace into F7 ───┐└─ ,

│Step over F8 ──┐│

│Arguments ─┐│└──

└───────────────────────┘││

│└───

└────

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└─────────────────────────────────│────────────────────────────┘

┌┴─────────────────────────┐

┌──────────────────────────────── Inspect Alt+F4 │

│┌─────────────────────────────── Evaluate/modify Ctrl+F4 │

││ ( )──── Call stack Ctrl+F3 │

││ 頠 │Watches ──┐

││ / ───── Toggle breakpoint Ctrl+F8 │ │

││ ┌── Breakpoints │ │

││ / ───┘ └──────────────────────────┘ │

││ ࠠ │

││ ( Watch) │

││ ┌─────────────────────┴─┐

││ ──────────── Add watch Ctrl+F7 │

││ ───── Delete watch │

││ ───────── Edit watch │

││ ───────── Remove all watches │

││ └───────────────────────┘

│└─

└── ()

(lt+F4)

().

,

Esc. Alt+M -

. -

, - .

8.

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└───────────────────────────────────────────│──────────────────┘

┌───┴───────────┐

│Application │

│Compiler ─

│Transfer │

│Make │

│Linker ─

│Libraries │

│Debugger │

│Directories │

├───────────────┤

│Environment ─

├───────────────┤

│Save │

└───────────────┘

9.

┌──────────────────────────────────────────────────────────────┐

│File Edit Search Run Compile Debug Project Options Window Help│

└──────────────────────────────────────────────────────────│───┘

┌──────────────────┴───┐

Help ─────────── Contents F1 │

() ──────── Index Shift+F1 │

──── Topic Search Ctrl+F1 │

────────── Previous Topic Alt+F1 │

Help ────────────────────── Help on help │

└──────────────────────┘

#include #include #define FA_DIREC 0x10 #define CONTROL '$' #define OPEN "" #define CLOSE "" #define DEFIS "" #define NUM "" #define EOLN ' ' #define ITALIC "" #define BOLD "" // $

 

 

 

! , , , .
. , :