집 >백엔드 개발 >C#.Net 튜토리얼 >C 언어 라이브러리 기능(B형 문자)
函数name: bar
功 能: 画一个五维条형图
용법: void Far bar(int left, int top, int right, int Bottom);
程序例:
#include
#include
#include
#include
{
/* 자동 감지 요청 */
int gdriver = DETECT, gmode, errorcode;
int midx, midy, i; /* 그래픽 및 지역 변수 초기화 */
initgraph(&gdriver, &gmode, ""); /* 초기화 결과 읽기 */
errorcode = graphresult();
if (errorcode != grOk) /* 오류가 발생했습니다 */
{
PRintf("그래픽 오류: %sn", grapherrormsg(errorcode));
printf("중단하려면 아무 키나 누르십시오:");
가져오기();
출구(1); /* 오류 코드로 종료 */
} midx = getmaxx() / 2;
midy = getmaxy() / 2; /* 채우기 패턴 반복 */
for (i=SOLID_FILL; i
/* 채우기 스타일 설정 */
setfillstyle(i, getmaxcolor()) ; /* 막대 그리기 */
bar(midx-50, midy-50, midx+50,
midy+50); getch();
} /* 정리 */
closegraph();
0을 반환합니다.
}
函数name: bar3d
功 能: 画一个 3维条형图
용법: void Far bar3d(int left, int top, int right, int Bottom,
int 깊이 , int topflag);
예: #include
#include
#include
#include
{
/* 자동 감지 요청 */
int gdriver = DETECT, gmode, errorcode;
int midx, midy, i; /* 그래픽, 지역 변수 초기화 */
initgraph(&gdriver, &gmode, ""); /* 초기화 결과 읽기 */
errorcode = graphresult();
if (errorcode != grOk) /* 오류가 발생했습니다 */
{
printf("그래픽 오류: %sn", grapherrormsg(errorcode));
printf("중단하려면 아무 키나 누르십시오:");
가져오기();
출구(1); /* 오류 코드로 종료 */
} midx = getmaxx() / 2;
midy = getmaxy() / 2; /* 채우기 패턴 반복 */
for (i=EMPTY_FILL; i
/* 채우기 스타일 설정 */
setfillstyle(i, getmaxcolor()) ; /* 3차원 막대 그리기 */
bar3d(midx-50, midy-50, midx+50, midy+50, 10, 1); getch();
} /* 정리 */
closegraph();
0을 반환합니다.
}
函数name: bdos
功 能: DOS系统调사용
용법: int bdos(int dosfun, unsigned dosdx, unsigned dosal);
예: #include
#include
char current_drive(void)
{
char curdrive; /* 현재 디스크를 0, 1, ...으로 가져오기 */
curdrive = bdos(0x19, 0, 0);
return('A' + curdrive);
} int main(void)
{
printf("현재 드라이브는 %c:n입니다.", current_drive());
0을 반환합니다.
}
函数name: bdosptr
功 能: DOS系统调사용
용법: int bdosptr(int dosfun, void *argument, unsigned dosal);
예: #include
#include
#include
#include
#include
#include
{
문자 버퍼[BUFLEN];
정수 테스트; printf("디렉토리의 전체 경로 이름을 입력하세요");
get(버퍼); 테스트 = bdosptr(0x3B,버퍼,0);
if(테스트)
{
printf("DOS 오류 메시지: %dn", errno);
/* 오류 목록은 errno.h를 참조하세요. */
exit (1);
} getcwd(버퍼, BUFLEN);
printf("현재 디렉터리는: %sn", buffer); 0을 반환합니다.
}
사용 이름: bioscom
功 설명: 串行I/Ocommunications
용법: int bioscom(int cmd, char abyte, int port);
예: #include
#include
#define DATA_READY 0x100
#define TRUE 1
#define FALSE 0 #define SETTINGS ( 0x80 0x02 0x00 0x00) int main(void)
{
int in, out , 상태, 완료 = FALSE; bioscom(0, 설정, COM1);
cprintf("...BIOSCOM [ESC]를 사용하여 ...n을 종료합니다.");
while (!DONE)
{
status = bioscom(3, 0, COM1);
if (status & DATA_READY)
if ((out = bioscom(2, 0, COM1) & 0x7F) != 0)
putch(out);
if (kbhit())
{
if ((in = getch()) == 'x1B')
DONE = TRUE;
bioscom(1, in, COM1);
}
}
0을 반환합니다.
}
函数명: biosdisk
功 能: 软硬盘I/O
용법: int biosdisk(int cmd, int 드라이브, int head, int track, int 섹터
int nsects , 무효 *버퍼);
예: #include
#include
{
int result;
문자 버퍼[512]; printf("드라이브 a:가 준비되었는지 테스트 중입니다.");
결과 = biosdisk(4,0,0,0,0,1,버퍼);
결과 &= 0x02;
(결과) ? (printf("드라이브 A: 준비됨")) :
(printf("드라이브 A: 준비되지 않음")); 0을 반환합니다.
}
函数name: biosequip
功 能: 检查设备
용법: int biosequip(void);
예: #include
#include
{
int result;
문자 버퍼[512]; printf("드라이브 a:가 준비되었는지 테스트 중입니다.");
결과 = biosdisk(4,0,0,0,0,1,버퍼);
결과 &= 0x02;
(결과) ? (printf("드라이브 A: 준비됨")) :
(printf("드라이브 A: 준비되지 않음")); 0을 반환합니다.
}
사용법: bioskey
功 能: 直接使用BIOS服务的键盘接口
용법: int bioskey(int cmd);
예: #include
#include
#include
#define LEFT 0x02
#define CTRL 0x04
#define ALT 0x08 int main(void)
{
int 키, 수정자; /* 함수 1은 키를 누를 때까지 0을 반환합니다. */
while (bioskey(1) == 0); /* 함수 0은 대기 중인 키를 반환합니다. */
key = bioskey(0); /* Shift 키가 사용되었는지 확인하려면 함수 2를 사용하세요. */
modifiers = bioskey(2);
if(수정자)
{
printf("[");
if (수정자 & RIGHT) printf("RIGHT");
if (수정자 & LEFT) printf("LEFT");
if (수정자 및 CTRL) printf("CTRL");
if (수정자 및 ALT) printf("ALT");
printf("]");
}
/* 읽은 문자를 인쇄합니다 */
if (isalnum(key & 0xFF))
printf("'%c'n", key);
else
printf("%#02xn", key);
0을 반환합니다.
} 函数name: biosmemory
功 能: 返回存储块大小
사용법:int biosmemory(void);
예: #include
#include
{
int memory_size; memory_size = biosmemory(); /* 최대 640K의 값을 반환합니다. */
printf("RAM 크기 = %dKn",memory_size);
0을 반환합니다.
}
사용법: biosprint
사용 방식: 直接使用BIOS服务的打印机I/O
용법: int biosprint(int cmd, int byte, int port);
예: #include
#include
#include
{
#define STATUS 2 /* 프린터 상태 명령 */
#define PORTNUM 0 /* LPT1의 포트 번호 */ int status, abyte=0; printf("프린터를 끄십시오. 계속하려면 아무 키나 누르십시오.");
가져오기();
상태 = biosprint(STATUS, abyte, PORTNUM);
if (status & 0x01)
printf("Device time out.n");
if (status & 0x08)
printf("I/O error.n"); if (status & 0x10)
printf("Selected.n");
if (status & 0x20)
printf("용지 없음.n"); if (status & 0x40)
printf("Acknowledge.n");
if (status & 0x80)
printf("Not busy.n"); 0을 반환합니다.
}
函数name: biostime
功 能: 读取或设置BIOS时间
사용법: long biostime(int cmd, long newtime);
예: #include
#include
#include
#include
{
long bios_time; clrscr();
cprintf("자정 이후의 시계 틱 수:rn");
cprintf("자정 이후의 초 수:rn");
cprintf("자정 이후의 분 수:rn");
cprintf("자정 이후의 시간은 다음과 같습니다:rn");
cprintf("rn종료하려면 아무 키나 누르세요:");
while(!kbhit())
{
bios_time = biostime(0, 0L); gotoxy(50, 1);
cprintf("%lu", bios_time);
cprintf("%.4f", bios_time / CLK_TCK)
cprintf("%.4f" , bios_time / CLK_TCK / 60); gotoxy(50, 4);
cprintf("%.4f", bios_time / CLK_TCK / 3600)
}
return 0; 함수 이름: brk
함수: 데이터 세그먼트 공간 할당 변경
사용법: int brk(void *endds)
프로그램 예: #include
{
char *ptr; printf("brk()n으로 할당 변경")
ptr = malloc(1)
printf("brk( ) 호출: %lu bytes freen", coreleft());
brk(ptr+1000);
printf(" brk() 호출 후: %lu bytes freen", coreleft());
return 0;
}
함수 이름: bsearch
함수: 이진 검색
사용법: void *bsearch(const void *key, const void *base, size_t *nelem,
size_t width, int(*fcmp)(const void *, const *))
프로그램 예: #include
{
return(*p1 - *p2);
} int lookup(int key)
{
int *itemtr; /* (int(*)(const void *,const void *) ))
컴파일 시간 */
itempr = bsearch (&key, numarray, NELEMS(numarray),
sizeof(int), (int(* ))에서 유형 불일치 오류를 방지하는 데 필요합니다. (const void *,const void *))numeric);
return (itempr != NULL)
} int main(void)
{
if (lookup(512))
printf("512는 table.n에 있습니다.");
else
printf("512는 table.n에 없습니다.") return 0
위 C 언어 라이브러리 함수(B형 문자) 내용입니다. 더 많은 관련 글은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!