[42서울, Minitalk] 2. 신호를 이용한 문자열 수신
문자 수신? 문자열 수신은 이전 단계에서 진행한 것처럼 문자를 비트로 수신받아 그 비트들을 쉬프트 연산을 통해 숫자를 만들어주면 된다. 이때 신호를 받기 위해서 signal이라는 함수를 사용해야한다. 해당 함수는 특정 신호를 받았을 때 등록된 함수를 실행시켜준다. 그래서 SIGUSR1, SIGUSR2를 받았을 때 그에 맞게 함수를 꾸려주면 해당 과제를 수행할 수 있다. 그리고 문자열의 끝을 만나면 해당 문자열을 출력해주기만 하면 문자열 수신이 완료된다. 이렇게 기능을 구현하여 알맞게 살을 붙여 코딩을 진행하면 100점을 맞을 수 있다!
개발 일기/개발 적성찾기
2021. 6. 13. 02:26
[42서울, Minitalk] 1. 신호를 이용한 문자 전송
문자 전송? 문자열 전송은 다수의 문자를 순서에 맞게 보냄으로써 해결할 수 있다. 문자를 보내는 방법을 알게된다면 그 행위를 반복함으로써 문자열 전송을 해결할 수 있다. 그렇다면 문자는 어떻게 전송할까? C언어에서 문자는 아스키 코드로 표현되고 그로인해 문자를 숫자에 각각 대응시킬 수 있다. 예를 들면 문자 'a'는 97이라는 숫자에 대응할 수 있다. 또한 우리는 97이라는 숫자를 2진법으로 나타낼 수 있다. 나타내면 이와 같은 숫자가 나온다. (1100001) 다시 문제로 돌아가 우리는 SIGUSR1, SIGUSR2 이렇게 2개의 신호를 사용할 수 있다. 또한 숫자의 비트는 쉬프트 연산을 이용하여 얻어낼 수 있다. 이제 1을 만나면 SIGUSR1을 보내고, 0을 만나면 SIGUSR2를 보냄으로써 97이..
개발 일기/개발 적성찾기
2021. 6. 3. 21:29