이번에는 구조체를 사용하고 함수를 이용한 ESQL 프로그램을 해보겠다. EXEC SQL BEGIN DECLARE SECTION; typedef struct { char a[100]; char b[100]; } S; EXEC SQL END DECLARE SECTION; void test(s) $PARAMETER S *s; { $char work1[100]; $char work2[100]; memset(work1,0x00,sizeof(work1)); memset(work2,0x00,sizeof(work2));memcpy(work2,"a2",sizeof(work2)); EXEC SQL connect to "dbname"; EXEC SQL DECLARE test_cur SCROLL CURSOR FOR SELEC..
보통 C 프로그램은 구조체를 사용한다. 그래서 이번에는 구조체를 사용하여 ESQL 프로그램을 해보겠다. EXEC SQL BEGIN DECLARE SECTION; typedef struct { char a[100]; char b[100]; } S; EXEC SQL END DECLARE SECTION; main(int argc, char *argv[]){ $S s; memset(&s,0x00,sizeof(S)); //배열일 경우는 배열명이 포인터니 그냥 배열이름을 써도 되지만 구조체는 구조체명이 포인터가 아니기 때문에 &붙여서 포인터를 만든다 $char work1[100]; $char work2[100]; memset(work1,0x00,sizeof(work1)); memset(work2,0x00,sizeo..
c언어를 하다보면 외부기관과 전문통신을 할 경우가 생긴다. 외부기관과의 통신하는 방법은 여러가지가 있다. 메시지 교환 형식은 soap, xml, json 등등.. c언어 특히 금융기관에서 자주 쓰이는 방식은 전문 통신 즉, 캐릭터(char)를 쫙~ 붙여서 만들어 tcp/ip 소켓통신으로 메시지를 주고 받는다. json이나 xml은 key,value 방식이라 key만 봐도 대출 value가 의미하는것을 안다. 그러나 전문통신은 char가 쫙~ 붙어있는 방식이라 전문 설계 레이아웃 문서(보통 엑셀형식)가 없으면 전문내용 파악이 불가능 하다. 그래서 보안이 중요시된 금융권에서는 사람이 보기 힘들어도 이러한 전문 통신을 고수하는것 같다. 예전 부터 이렇게 하고 있었던것도 있을 수 있고... 그래서 샘플 소스를 ..
간접멤버참조연산자(->)는 구조체 포인터변수로 그것이 가리키는 구조체변수의 멤버를 참조할 때 사용한다. 연산자의 왼쪽에는 구조체 포인터변수를 사용하고 오른쪽에는 구조체변수의 멤버가 사용된다. 소스코드를 살펴보면 char wk_char1[1+1]; memset(wk_char1,0x00,sizeof(wk_char1)); memcpy(wk_char1,i515391.id_gubun,1); i515390.id_gubun=antoi(wk_char,1); //여기서 main함수를 호출하면 main(&i515390); int main(i515390) I515390 *515390; { //메인함수에서는 간접멤버참조연산자를 통해 멤버값을 참조한다. i515390->id_gubun; }
- Total
- Today
- Yesterday
- EC
- xe애드온
- 자바 smtp
- C
- 오라클
- Python
- 프로씨
- KG
- ocpjp
- ocajp
- proc
- 자바 셀레니움
- esql
- ocjap
- C언어
- XE
- 파이썬
- 이클립스
- 인포믹스
- xe addon
- XE3
- JDBC
- 스크래핑
- webix
- php
- 문자열
- 포인터
- 파싱
- MySQL
- 자바
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |