본문 바로가기
반응형

코스웨어2442

20160415_장진웅_업무일지_공장내Network_일대일통신_입출력다중화(원시적인 채팅 프로그램) 첫번째 작품 #include #include #include #include #include #include int main(void) { int iSock;//변수를 저장할 공간이 필요하다. int iLen;//구조체 길이를 저장하기 위해 사용한다. char caBuff[250]; int iRet; struct sockaddr_in stServer;//접속하거나 네트워크에 사용될 IP, PORT번호가 iSock=socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);//open과 같은 역할, 네트워 if(iSock mem은 mem, set은 세팅, 즉. 메모리를 세팅한다는 뜻이? //위 설명(계속): &stServer는 메모리 //위 설명(계속): 0는 초기화 해주겠다. //위 설명(.. 2016. 4. 16.
20160414_장진웅_업무일지_공장내Network_일대일통신(메뉴 추가한 도서관 프로그램) book.h#ifndef __BOOK_H__ #define __BOOK_H__ #define FILENAME "BOOK.DBF" #include #include #include //#define BNAME_LEN 30 #define BPUB_LEN 20 typedef struct book { char caName[BNAME_LEN]; char caPub[BPUB_LEN]; unsigned int uiPri; struct Book *Next; }Book; typedef enum mnum { INSERT, DEL, PRINT, ALLFREE, SAVE, END }MNum; typedef struct menumap { MNum eMenu; void (*fpRun)(); }MenuMap; void Book_In.. 2016. 4. 16.
2016-04-07-조재찬_업무일지_구조체 및 함수 구조체와 배열 연관되었지만 타입이 다른 자료형의 경우는 구조체, 같은 경우는 배열 사용 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 #include #include struct person { char name[20]; char phoneNum[20]; int age; }; int main() { struct person man1, man2; strcpy(man1.name, "안성준"); strcpy(man1.phoneNum, "010'1122-3344"); return 0; } 위의 소스를 아래와 같이 비유할 수 있다. 붕어빵 기계 틀 struct person 타입 붕어빵 man 변수 (메모리를 차지) atoi 함수 예제 소스 // a to i ascii->int 문.. 2016. 4. 15.
2016-04-06-조재찬_업무일지_포인터 및 함수 배열 2차원에서 가로의 크기는 정해줘야 함 이중 포인터와 다중포인터 PPP PP P num A=100 int*** int** int* int 대상의 type 자기자신의 type int * (포인터) 가리키는 대상 포인터 PP *PPP p **PPP B ***PPP int * whoA[4]={&num1, &num2, &num3, &num4}; // 포인터 배열이고 16byte int (*whoB)[4]=arr2d; // 배열 포인터이고 4byte 이중 포인터 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include int main(void) { double num = 3.14; double *ptr = # double **dptr = &ptr; double *.. 2016. 4. 15.
2016-04-14_조재찬_업무일지_네트워크:소켓 네트워크 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include int main() { fprintf(stdout, "TEST \n"); write(1,"TEST \n", 5); char caBuff[250]; //fclose(stdout); fprintf(stdout, "TEST \n"); write(1,"TEST \n", 5); //write(1, "\033[1;1H/033[2]", 10); // ANSI 코드를 출력 read(0, caBuff, 250); printf("%s", caBuff); return 0; } Output : //주석을 가지고 출력값을 테스트 TESTTEST TESTTEST (안녕하세요 입력)안녕하세요 클라이언트 테스트 mai.. 2016. 4. 15.
20160405-업무일지-허도경-로봇제어-시리얼제어 gcc: gnc c compilergdb: gnu debugger-----------------------------------------------------------------------------------------int A[10];int *P = A;int B[9];P = B;위의 코드에서 int *P=A; 까지 해석하면A[0]=10; *(A+0)=10; *A=10; P[0]=10; *(P+0)=10; *P=10P = B;까지 전부 해석하면B[0]=9; *B(B+0)=9; *B=9;P[0]=9; *(P+0)=9; *P=9; 이렇게 된다. 2016. 4. 14.
비주얼 스튜디오 패키지 오류 삽질기... AVR Studio 7 설치후 비주얼 스튜디오 2015에서 c++ 이나 기타 프로젝트가 생성이 안되고 패키지 오류가 뜨더군요... 그래서 AVR 7 지우고 나니 비주얼 스튜디오은 잘됩니다... 혹시나 싶어서 AVR Studio 7먼저 설치하고 비주얼 스튜디오 2015 설치하니... 갑자기 헬이 시작 되더군요 ㅡㅡ 결국 2개 다 지우고...비주얼 스튜디오만 설치했으나...뭔가 꼬여서...실행조차 안됩니다; 구글링하다가 이것저것 방법을 보고 사용자 정보 저장되는 영역까지 지워보고...(어딘지 까먹었습니다...user 폴더안의 visual studio 폴더 관련된곳 이었던거 같은데;;) 설치프로그램.exe /uninstall /force 명령어로 지웠으나 깨끗이 지워지지가 않았습니다 여전히 설치를 해도...패.. 2016. 4. 13.
20160405_조재찬_업무일지_포인터와 배열 배열의 이름은 포인터이다. int형 배열의 주소값 차는 4바이트이며, 주소값의 변경은 불가능하다. (값을 바꿀 수 없는 상수형) 포인터 변수와 배열의 이름 모두, 메모리의 주소값을 나타내고 저장한다. 1 2 3 4 5 6 7 8 9 10 11 12 #include int main() { int arr[3] = { 0, 1, 2 }; printf("배열의 이름: %p \n", arr); printf("첫번째 요소: %p \n", &arr[0]); printf("두번째 요소: %p \n", &arr[1]); printf("세번째 요소: %p \n", &arr[2]); // arr = &arr[i]; // 이 문장은 컴파일 에러를 일으킨다. return 0; } Output:1 2 3 4 배열의 이름: 0xf.. 2016. 4. 12.
20160411_장진웅_업무일지_구조체로 도서관 프로그래밍 CC=gcc RM=rm -rf OUTPUT = main BOOK_NAME=30 MSG_LINK = linking... MSG_END = compile complete... MSG_BOOK_START = book.c comile... MSG_BOOK_END = book.c compile end... MSG_MAIN_START = main.c compile... MSG_MAIN_END = main.c compile end... MSG_BEGIN = ------- begin ------- MSG_END = ------- end ------- all: begin book main build end rebuild: clean all build: @echo $(MSG_LINK) @$(CC) -o $(OUTPUT) .. 2016. 4. 11.
728x90
반응형