프로그래밍 QnA + 설치 및 활용 QnA

bommy의 이미지

int와 char의 단일 문자 저장

안녕하세요!! 교수님께서 아스키 코드의 저장과 출력에 대하여 수업하셨는데,
몇 가지 궁금증이 생겨 질문합니다!

int num5 = 'a';
printf("%c, %d", num5, num5);
위 경우, int에 a가 저장되고, 각각 a, 97이라는 값을 출력해줍니다

int num1;
scanf("%c", &num1);
printf("%c, %d\n", num1, num1);
하지만, 이 경우처럼 값을 입력 받는 예제를 만드는 경우에는 단일 문자를 출력하는 데에는 문제가 없으나
숫자를 출력하지는 못합니다... 혹시 scanf함수를 이용하는 경우, 단일 문자를 받을 때 int 자료형 대신에 무조건 char 자료형을 써야 할까요??

====================================================================

djfdmacpdls의 이미지

윈속 recv없이 값을 받는 방법

서버와 통신하는 소켓을 사용하는 윈도우 유저 프로그램 A에 관해서 이야기를 드리겠습니다.

질문a) 요약하자면 패킷이 랜 카드에 도착하면 드라이버나 커널이 알아서 패킷의 값을 A프로세스에 write하는 기법이 있나요?

이와 같은 일이 궁금한 이유는, 실제 A프로그램을 분석하면서 A프로그램을 윈도우 작업관리자나 디버거를 통해서 완전히 A프로그램을 suspend 혹은 freeze 하였습니다. 그 후 서버가 패킷을 보내 와이어샤크를 통해 패킷을 확인하였습니다. 그 후 디버거를 통해 A프로세스의 메모리값을 확인하던 중 와이어샤크에서 수신한 패킷이 A프로세스의 데이터 영역에서 발견이 되었습니다.(A프로그램이 윈도우 서비스나 다른 프로세스와 전혀 연결되지 않았고 웬 만큼 의심할 수 있는 부분은 다 확인하였고 근본적인 a)의 질문만이 남았습니다.)

오일러의 이미지

키보드 드라이버 제작

요즘 데스크탑에서 많이 사용되는 usb형식의 키보드 드라이버를 만들고자 하는데요
혹시 참고하면 좋을 자료같은거 있을까요?

이런건 처음이라 감이 잘 안오네요.

os에 종속적인 내용 보다는
usb형식의 키보드 드라이버 그 자체에대한 내용 위주로 알고싶습니다.

code2git의 이미지

C언어 기업 무료 개발 환경 문의

초보적인 질문 드립니다.

구글링 해도 명확히 ~다 라고 명시된 것을 찾아보기 어려워 질문을 남깁니다.

기업에서 C언어 무료 개발 환경은 어떤 것들이 있는지.. 그리고 아래의 환경도 무료인지 문의 드립니다.

프로그램을 개발해서 팔려는 목적은 아니고, 단순 테스트용입니다.

- VSCODE + MinGW-w64
- Code::Blocks
(검색하다보면, Code Blocks도 MinGw를 활용하긴 하네요..)

감사합니다.

Seok-gi Hong@Google의 이미지

vi 에서 % 로 짝을 찾을 수 있는 기능이 있는데 이때,,,

안녕하세요
vi 를 사용하면 % 를 이용하여

괄호 { 에서 % 를 누르면 } 이 괄호를 찾아 주고,

마찬가지로 ( ) 도 찾아 줍니다.

#ifdef 도 마찬가지로 찾아 주는데,

제가 문의 드릴 것은 <<<<<< >>>>>> 이런 문자열 % 로 짝지를 찾아 줄 수 있도록 수정하는 방법이 있는지 입니다.

patch 를 할 경우 conflict 가 발생하면 <<<<<< >>>>>> 이렇게 표기를 해주고 있어서

% 에 이 문자열을 추가 시키면 짝지찾는데 도움이 될 것 같아서요

eu의 이미지

유닉스 범위설정

디렉토리 안의 파일 전체:

code-09_00
code-09_20
code-09_40
code-10_00
code-10_20
code-10_40
code-11_00
code-11_20
code-11_40
code-12_00
code-12_20
code-12_40
code-13_00
code-13_20
code-13_40
code-14_00
code-14_20
code-14_40
code-15_00
code-15_20
code-15_40
code-16_00
code-16_20
code-16_40

문제 : 파일 이름 끝 부분이 11_00 에서 14_40 까지인 파일을 나열해라.

-> ls code-[!09-10]* ; ls code-[!15-16]*

study의 이미지

thread 연습중에 이해가 안가는 부분이 있어 질문 올립니다.

https://kingko.tistory.com/entry/Message-Queue%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%9C-Thread-%EA%B0%84-%EB%A9%94%EC%8B%9C%EC%A7%80-%EC%A0%84%EB%8B%AC
를 보면서 thread 프로그래밍 연습을 하고 있었는데요.

좀 이해가 안가는 부분이 있어서 질문 올립니다.
위의 링크를 참고해서 아래와 같이 예제를 만들어 보고 있었습니다. (아직 완성된 건 아닌데요..)

bommy의 이미지

논리 연산자의 우선순위/계산

안녕하세요! c 처음 배우는 대학생입니다
논리 연산자라는 것을 공부하면서 의문점이 생겨 질문드립니다ㅠㅠ

- 논리 연산자의 우선순위
x = y = z = 1;
result = ++x || ++y && ++z;

의 식에서 &&이라는 논리 연산자가 ||이라는 논리 연산자보다 우선순위가 높기 때문에
저는 ||보다 (++y && ++z)의 식이 먼저 계산될 것이라고 생각했지만, ++x || ++y를 먼저 연산한
결과가 나왔습니다... 저는 프로그래밍이 항상 우선순위에 따라서 연산이 되는 것이라고 생각했는데
왜 왼쪽부터 계산한 결과가 나오는 것인가요??

+) ||이나 &&이 시퀀스 포인트로써의 역할을 하기 때문에, ||이전에서 식이 연산되어야 하기에
우선순위가 무시된 것이고, 시퀀스 포인트로써 기능하지 않는 연산자들의 우선순위는 제가 원래
생각했던 것처럼 연산의 우선순위를 정해주는 역할을 하는 것인가요??

bommy의 이미지

c언어undefined behavior

안녕하세요,, 대학교 1학년 전필 과목으로 c언어를 듣고 있는 학생입니다.
수업 내용 중에서 sequence point와 undefined behavior에 대한 내용이 나왔는데,
undefined behavior가 제대로 이해되지 않아 질문드립니다 ㅠㅠ

제가 이해한 바로는 undefined behavior는 컴파일러에 따라서 실행 결과가 다르게 나와
이식성을 떨어뜨리기에 사용하지 않는 편이 좋다는 것인데요,

예를 들어, a = i + i++; 식의 문장에서 후위수식연산자가 우선순위가 가장 높기에 먼저 실행되지만,
i값에 1이 더해지는 side effect는 sequence point 이전까지만 실행되면 될 뿐, 정확한 순서까지는
알 수 없기 때문에 컴파일러에 따라서 a = (i+1) + i이 되거나, a = i + i이 될 수 있다는 것입니다.
(맞나요?ㅠㅠ)

제 교수님께서는 수업에서 후위수식연산자에 대해서만 다루셨는데, 전위수식연산자는 어떤 식으로 처리되는지
궁금합니다..

페이지

프로그래밍 QnA + 설치 및 활용 QnA 구독하기