임베디드

임베디드

  • 분류 전체보기 (1142)
    • PL (150)
      • C++ (108)
      • Python (39)
      • Java (3)
      • Kotlin (0)
    • 알고리즘 (462)
      • 암기 (91)
      • 백준 (328)
      • 삼성 (17)
      • 종만북 (4)
      • 프로그래머스 (22)
    • 임베디드 (411)
      • 하드웨어지식 (12)
      • ATmega128 (98)
      • 32F429IDISCOVERY (57)
      • 임베디드리눅스 (15)
      • 리눅스커널스터디16기 (2)
      • 리눅스시스템프로그래밍 (97)
      • 운영체제 (26)
      • 컴퓨터구조 (4)
      • dd (1)
      • ubuntu (81)
      • opencv (18)
    • 드론 (99)
    • TIP (12)
  • 홈
  • 태그
  • 방명록
RSS 피드
로그인
로그아웃 글쓰기 관리

임베디드

컨텐츠 검색

태그

#linuxbirthday_a_message_from_Seoul_Korea !!

최근글

댓글

공지사항

아카이브

PL(150)

  • Winsock2 소켓 프로그래밍

    2019.09.01
  • 오목 승리 판정 구현하기

    2019.09.01
  • 오목 게임 화면 구성

    2019.09.01
  • C# 2차원 배열 구성해서 출력하기

    2019.09.01
  • boost.asio를 이용한 TCP 동기식 통신

    2019.08.31
  • 오목 시작 화면 구성하기

    2019.08.30
Winsock2 소켓 프로그래밍

Winsock2 라이브러리는 Window Socket API의 약자로 윈도우에서의 네트워크 프로그래밍을 지원한다. Winsock을 사용하기 위해서는 ws2_32_dll 파일을 사용 설정해야하고, WSAStartup 함수를 통해 환경 설정을 진행해야 한다 이제는 간단하게 TCP 프로토콜을 이용해서 클라이언트가 서버에게 보내면 서버가 똑같이 답하는 Echo 프로그램을 설계할 것이다. 다음과 같이 Server와 Client 프로젝트를 생성하도록 한다 그리고 위에서 말했듯이 Winsock 라이브러리를 사용하기 위해 링커에서 추가 종속성 ws2_32.lib를 추가하도록 한다 Winsock API를 처음에 setup 하는 과정을 제외하고는 일반적인 TCP 코드와 유사하다는 점을 알 수 있다 [서버] #define ..

2019. 9. 1. 23:29
오목 승리 판정 구현하기

저번까지 SinglePlay 화면까지 구성을 했다. 추후에는 AI 인공지능 소스를 넣어서 혼자하기 게임을 구성할 것이다. 지금은 초기 단계이기 때문에 혼자 번갈아가면서 흑,백 오목을 두면서 승리 판정을 구현하려고 한다 추가적으로 화면 구성을 위해서 게임시작 버튼과, textBox를 추가할 것이다. textBox를 Multiline으로 구성하기 위해서는 화살표를 클릭해 Multiline 속성을 활성화시켜준다 추가해야될 코드는 다음과 같다 1. 게임시작 버튼이 활성화되었을 때, 게임이 시작되는 것 2. 사용자에게 전달된 메세지 코드는 textBox를 통해 전달된다 3. 이제는 현재 플레이어를 구분해서 말들의 색을 구분해서 승리판정 알고리즘을 구현한다 오목이 나올 수 있는 경우는 ㅡ | / \총 4가지다. 따..

2019. 9. 1. 14:09
오목 게임 화면 구성

오목 게임 화면을 구성하려고 한다. 그림을 넣기 위해서 PictureBox를 삽입해야만 한다. 혹시나 PictureBox가 검색되지 않는다면 다음과 같은 절차를 밟는다 다음과 같이 적절한 사이즈와 색상을 주어서 만들 수 있다. 그리고 도구상자에서 번개모양을 클릭하면 이벤트 처리를 할 수 있는 목록이 나열된다. 먼저 오목판에 오목이 놓아졌을 때의 처리를 하기 위해서 MouseDown 이벤트를 처리할 것이다 더블클릭을 하면 코드쪽으로 가서 이벤트핸들러 코드가 생겼다는 것을 확인할 수 있다 그리고 마찬가지로 SinglePlay 화면이 처음으로 켜졌을 때 화면을 구성하는 이벤트인 Paint 이벤트까지 넣을 것이다 코드는 다음과 같이 구성할 수 있다 using System; using System.Collecti..

2019. 9. 1. 12:07
C# 2차원 배열 구성해서 출력하기

C#에서 2차원 배열 선언은 [,]로 구분한다 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp1 { class Program { static void Main(string[] args) { int[,] m = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9 }}; for(int i=0; i

2019. 9. 1. 10:37
boost.asio를 이용한 TCP 동기식 통신

[서버] #define _CRT_SECURE_NO_WARNINGS #include #include #include #include using boost::asio::ip::tcp; std::string make_daytime_string() { using namespace std; // For time_t, time and ctime; time_t now = time(0); return ctime(&now); } int main() { try { // 반드시 boost.asio를 사용하면 선언 boost::asio::io_service io_service; // boost.asio가 간편한 점은 서버에서 bind, listen을 다음과 같이 생략할 수 있다 // IPv4 주소체계를 사용하고, 13번 포트..

2019. 8. 31. 12:00
오목 시작 화면 구성하기

클라이언트 프로그램은 C#, 서버 프로그램은 C++로 구현하는 것이 일반적이다 먼저 UI 부분에 대해서 C# 프로그램을 구현할 것이다. Visual C# Framework을 설치해서 다음과 같이 프로젝트를 생성한다 프로젝트가 올바르게 만들어졌다면 다음과 같은 화면이 나올 것이다 Forms 파일을 수정하기 위해서 다음과 같이 도구상자를 이용한다. 도구상자가 현재 없어서 다음과 같이 검색 후 위치를 재조정한다 Label을 검색해서 드래그앤 드롭을 하면 다음과 같이 라벨이 생기고, 속성 탭에 들어가서 수정할 수 있다 Ctrl + F5 디버그 없이 실행하기를 누르면 Form 화면을 띄워지는 것을 확인할 수 있다 시작화면을 구성하기 위해서 기존 화면을 지우고, 버튼을 2개 추가하고 속성에서 Text를 다음과 같이..

2019. 8. 30. 21:38
1 ··· 3 4 5 6 7 8 9 ··· 25
티스토리
© 2018 TISTORY. All rights reserved.

티스토리툴바