728x90
반응형
네트워크
#include <stdio.h>
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 : //주석을 가지고 출력값을 테스트
TEST
TEST TEST
TEST (안녕하세요 입력)
안녕하세요
클라이언트 테스트
main.c // sendto를 위한 네트워크 소켓생성 소스
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <string.h>
int main()
{
int iSock; // socket 함수의 반환값 받아냄
struct sockaddr_in stServer; //network에 사용될 ip, port번호 저장
int iLen; // 구조체 길이 저장
char caBuff[250]; // 최대로 읽어들일 버퍼 크기
int iRet; // 키보드 입력을 읽어들여 저장, iRet=read
//char *inet_ntoa 숫자 입력하면 문자열 반환
iSock=socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);
if(iSock<0)
{
printf("소켓 생성불가 \n");
return;
}
memset(&stServer,0, sizeof(stServer)); //구조체 초기화(bzero와 같은 효과)
stServer.sin_family=AF_INET; // 주소체계 : ipV4 인터넷 프로토콜
stServer.sin_addr.s_addr = inet_addr("192.168.1.55"); // 32bit ip 설정
stServer.sin_port = htons(9999); // 포트번호 설정, 구조체 설정 끝, little->big endian
iLen=sizeof(stServer); // iRen에 구조체 길이 넣어줌
printf("메시지를 입력하세요 \n"); // app사용자에게 입력상태임을 알려줌
fflush(stdout);
iRet=read(0, caBuff, 250);
// 첫번째 인자0이면 키보드 입력을 받음, 입력받는 주소 caBuff, 최대 크기 250)
sendto(iSock, caBuff, iRet, 0, (struct sockaddr*)&stServer, iLen);
// 소켓번호, 데이터가 든곳, 보낼 바이트수, 0, 보내는곳의 정보(구조체 주소), 길이
// udp로 통신
close(iSock); // 네트워크 끊김
return 0;
} |
메뉴얼 보기
man htons // host byte order to network byte order short
네트워크 표준은 big endian이며 intel cpu는 little endian을 채택하고 있기에 변환이 필요함.
728x90
'코스웨어 > 16년 스마트컨트롤러' 카테고리의 다른 글
20160415_장진웅_업무일지_공장내Network_일대일통신_입출력다중화(원시적인 채팅 프로그램) (1) | 2016.04.16 |
---|---|
20160414_장진웅_업무일지_공장내Network_일대일통신(메뉴 추가한 도서관 프로그램) (0) | 2016.04.16 |
2016-04-07-조재찬_업무일지_구조체 및 함수 (0) | 2016.04.15 |
2016-04-06-조재찬_업무일지_포인터 및 함수 (0) | 2016.04.15 |
20160405-업무일지-허도경-로봇제어-시리얼제어 (0) | 2016.04.14 |
비주얼 스튜디오 패키지 오류 삽질기... (0) | 2016.04.13 |
20160405_조재찬_업무일지_포인터와 배열 (0) | 2016.04.12 |
20160411_장진웅_업무일지_구조체로 도서관 프로그래밍 (1) | 2016.04.11 |