C문장을 Delphi로 변환좀 해주세요... ㅜㅜ
아주 급합니다... ㅜㅜ
#include <stdio.h>
#include <dos.h>
#include <systypes.h>
#include <sysstat.h>
#include <io.h>
#include <conio.h>
#include <fcntl.h>
#include <stdlib.h>
#include <ctype.h>
#include <process.h>
#include <memory.h>
#include <string.h>
#include "commu.h"
#define NULLP (char *)NULL
extern int putrngnc();
char getrng(ptr) /* ret : ~0=ok 0=empty */
struct ringbuf *ptr;
{
char ch;
if (ptr->head == ptr->tail) {
if (txdc3[m]) {
txdc3[m] = 0;
snddc1(m);
}
return(0); /* empty */
}
if (++ptr->head > &ptr->buf[ccMAX - 1])
ptr->head = &ptr->buf[0];
if (parap->code && parap->dtlngth) /* EIA && 8bit */
ch = eiatoasc[(unsigned char)*ptr->head];
else {
if ((ch = *ptr->head) == 'r')
ch = 0;
}
if (m == curmach)
putrngnc(&dispbuf.head,ch);
return(ch);
}
int putrng(ptr,ch) /* ret : 1=ok 0=buffer full */
struct ringbuf *ptr;
char ch;
{
char *tmp;
char chr;
tmp = ptr->tail + 1;
if (tmp > &ptr->buf[ccMAX - 1])
tmp = &ptr->buf[0];
if (tmp == ptr->head)
return(0); /* full */
if (parap->code && parap->dtlngth) { /* EIA && 8bit */
if (!(chr = asctoeia[(unsigned char)ch]))
return(1);
} else
chr = ch;
*tmp = chr;
ptr->tail = tmp;
entxint(m);
if (m == curmach)
putrngnc(&dispbuf.head,ch);
return(1);
}
포인터 쓴거 때문에 어렵네요. 아마 다른 고수 분들도
포인터 때문에 그러신가요 ? 아님, 함수 사용 땜에 그러신가요 ? ^^;
고수분들 아마도 API함수에 푸~~욱 빠져 계신가봐... ㅡㅡ!
미안합니다. 도움을 못 드려서...