수다닷컴

  • 해외여행
    • 괌
    • 태국
    • 유럽
    • 일본
    • 필리핀
    • 미국
    • 중국
    • 기타여행
    • 싱가폴
  • 건강
    • 다이어트
    • 당뇨
    • 헬스
    • 건강음식
    • 건강기타
  • 컴퓨터
    • 프로그램 개발일반
    • C언어
    • 비주얼베이직
  • 결혼생활
    • 출산/육아
    • 결혼준비
    • 엄마이야기방
  • 일상생활
    • 면접
    • 취업
    • 진로선택
  • 교육
    • 교육일반
    • 아이교육
    • 토익
    • 해외연수
    • 영어
  • 취미생활
    • 음악
    • 자전거
    • 수영
    • 바이크
    • 축구
  • 기타
    • 강아지
    • 제주도여행
    • 국내여행
    • 기타일상
    • 애플
    • 휴대폰관련
  • 프로그램 개발일반
  • C언어
  • 비주얼베이직

gcc랑 Java랑 네트워크 통신가능한가요?

풍란

2023.04.01

음~~
리눅스 기반에의 컴퓨터에서 gcc로 서버 프로그램을 짜고
클라이언트 쪽에서 자바로 클라이언트를 짜서 네트워크 통신(정확하게 데이터 전송)이
가능한가요?
만약 된다면 어떻게 가능한지 궁금합니다....
해보신분 계시다면 방법좀 알려주세요^^

신청하기





COMMENT

댓글을 입력해주세요. 비속어와 욕설은 삼가해주세요.

  • 대나무

    예전에.. 자바와.. C 간에.. 프로그램을 만든적이 있었는데.. 숫자형은.. 전부다.. 바이트로 변환해서.. 넘겨 주었습니다. 명령어 코드는 1byte, 설정정보는 2byte, 뭐 이런식으로요...
    숫자형은.. 일일이 다시 바이트로 쪼개고 합치는게 좀 귀찮긴 하지만.. 호환성을위해서라면 ^_^;;

  • 맨마루

    아참.. Java는 String에 unicode를 사용하니까 C쪽에 전송할때에는 바이트로 변환해서 전송해 주셔야 합니다^^;
    sd = socket(AF_INET, SOCK_STREAM, 0);
    bind()
    listen()
    read()
    write()
    대충 저런식으로 메소드 이용하셔서 구현하시면 됩니다.
    Unix에서 소켓 관련 메소드가 별도로 존재하기는 하지만..
    어차피 소켓도 파일로 간주되기 때문에 보통은 파일에 데이터 쓰듯이 파일 관련 메소드로 많이

  • 리네

    그외에는 숫자형이, short, int, long형의 바이트 오더가 CPU에 따라서 틀리기때문에 숫자를 전송하실 경우에는 주의 하셔야 하구요. 바이트 전송만 하실 경우에는 아무런 문제 없이 평소 하시던대로 하면 됩니다.
    각각 서버 & 클라이언트의 구현 방법은 다양하기때문에 적절한 패킷 형태를 정의해서 사용해야 할 것입니다.
    기존에 하시던대로 하시면 될 듯 싶습니다.
    C와 Java간에 통신하실때에는 위의 사항만 주의 하시면 큰 무리 없이 통신이 가능합니다

  • 비치나

    흠..작성 해 보셨으면 크게 어렵지 않을듯 싶습니다.
    주의 하실점은 Java의 경우 데이터 형이 O/S와 무관하게 정해져 있지만..
    C의 경우에는 o/s에 따라서(정확히는 CPU겠죠?) 데이터 형이 바뀝니다.
    예를들어 c의 경우에는 int형이 100% 16비트가 아니라는것이죠.
    16비트인곳도 있고, 32비트 인곳도 있습니다.
    반면 자바는 어떤 컴이나 어떤 O/S에서 실행하든 int는 32비트 입니다.
    따라서, 위와 같은 기본형에 대한 바이트 길이만 주

  • 세라

    음...제가 자바랑 리눅스에서 통신 프로그램은 짜봤는데 걍 각각의 서버 클라이언트 프로그램을 짜서
    서로 연동이 되는지 몰라서 물어봤었습니다^^
    srarpooh, 용여수다님 조언 감사합니다 꾸벅

  • 해비치

    Unix 계열은 O/S마다 제공되는 소켓 라이브러리가 조금씩 다릅니다.
    인터넷 상에서 C관련된 서버를 찾으시거나 사용하시려는 O/S에서 제공하는
    도움말 파일에서 sock부분을 참고하시면 어렵지 않게 구현 가능합니다.
    아니면 시중에서 간단한 서적이라도 한번 보시는게 좋을듯 합니다.
    싱크는 어렵지 않은데 어싱크는 좀 공부하셔야 하거든요.
    C소켓은 잘 못 작성하시면 조금 어려워질 수 있슶니다^^

  • 불꾼

    자바의 ServerSocket 도 바인딩하고 accept 에서 클라이언트 요청이 들어올때까지 blocking됩니다. 리눅스에서 네트워크 프로그래밍을 해보지는 않았지만 그쪼에서도 이런식으로 돌아가는 것으로 알고 있는데... 중요한 것은 각 언어에서 구현된 네트워크 접속 방식을 따른다면 일단 연결된다고 보아야 하지 않을까요, 그게 바로 추상화, 캡슐화의 개념이니까요.

  • 흰여울

    답변감사합니다..근데요...
    리눅스 소켓 통신할때는 소켓 생성하고 바운딩 시키고 억셉트 하고 기다리고 하는 등등 절차가 많은데
    자바는 클라이언트 경우에는 소켓 하나만 달랑 생성해서 연결 요청하면 바로 되는 등의
    서로의 각 절차가 다른데 이런거는 어떻게 되나요?
    그쪽이 궁금합니다..^^

  • 다참

    자세한건 기본적인 통신 관련 강좌나 책을 참고하시면 세부적으로 나오니 참고하시기 바랍니다.
    아니면 간단하게 위에서 말한것처럼 모두 스트링(바이트 어레이)로 보내시면 속 편합니다.

  • 민서

    네트윅 통신이라는거 자체가 이기종간의 통신이 목적이기때문에 가능합니다.
    C계열은 CPU의존적이기 때문에 사용하는 CPU타입을 고려하시면 됩니다.
    네트윅은 크게는 네트윅 기반이냐 호스트 기반이냐로 분류되는데...
    다른 말로는 리틀 엔디안인지 빅엔디안인지로 나뉘게 됩니다.
    이 부분은 전송하고자 하는 데이터가 숫자형(int, long, double등)을 사용할지에 따라 분류됩니다.
    그렇지 않고 모든 데이터를 스트링으로만 전송하신다면...
    문제없이 평소 하시는

번호 제 목 글쓴이 날짜
2700173 자바 소스인데 어떤게 에러인지..? (1) 호빵녀 2025-07-02
2700142 하단이 붙어있는 가변 레이아웃구조 질문드립니다. 이플 2025-07-02
2700089 이미지를 사다리꼴로 비틀게 하는 액션코드가 있나요? (4) 여름 2025-07-01
2700033 배경에 그라데이션을 넣으려고 하는데요.. (4) 화이티 2025-07-01
2700005 [질문] TextField 객체의 실제 높이 알아오는 방법 ? 천사의눈물 2025-07-01
2699978 FileReferenceList를 이용하여 업로드시 자꾸 실행속도가 느리다는 팝업이... (10) 데이비드 2025-06-30
2699944 자바스크립트가 많은 사이트는... (6) 희나리 2025-06-30
2699918 브라우저마다 다른 input과 텍스트 정렬 (3) 늘봄 2025-06-30
2699887 동적텍스트를 그래픽으로?? (2) 족장 2025-06-30
2699862 scope넣기 (1) 아인 2025-06-29
2699835 exe로 만드는 방법을....알려주세요.. (5) 방방 2025-06-29
2699809 롤오버할때 백그라운드 이미지로할때 alt설명은 어떻게해야하죠?..ㅠ (4) 반혈 2025-06-29
2699757 리스트뷰에 있는 내용을 랜덤으로 추출 세실 2025-06-28
2699725 JMX 질문입니다. (1) 시나브로 2025-06-28
2699695 으으아으ㅏ으ㅏ 정말미쳐버리겟네요 진달래 2025-06-28
2699665 absolute에 대해서 궁금한게 있습니다 (1) 영빈이 2025-06-28
2699629 테마 적용이 잘 안됩니다. ㅠㅜ (2) 서희 2025-06-27
2699601 html코딩 브라우져 확인 할때.. (5) 에드워드 2025-06-27
2699575 [질문] 고수님들...가르쳐주세염....renameTo에 관하여 일본드립 2025-06-27
2699547 [급]레이어보다 object태그가 우선순위가 되는 문제 (5) DevilsTears 2025-06-27
<<  이전  1 2 3 4 5 6 7 8 9 10  다음  >>

수다닷컴 | 여러분과 함께하는 수다토크 커뮤니티 수다닷컴에 오신것을 환영합니다.
사업자등록번호 : 117-07-92748 상호 : 진달래여행사 대표자 : 명현재 서울시 강서구 방화동 890번지 푸르지오 107동 306호
copyright 2011 게시글 삭제 및 기타 문의 : clairacademy@naver.com