프로그래밍 QnA

podoni의 이미지

if, if else, if return 중에서 더 나은 구문은 어떤 것일까요?

다음은 char* a의 값에 따라서 i의 값을 리턴하는 구문입니다.
문자열 비교이다 보니 저런 식으로 if문을 많이 사용하게 되었습니다.
제가 생각하는 방법은 아래에 있는 3가지 방법인데 프로그램 구조적 측면에서 이 중에서 어느 것이 더 나은 코드라고 할 수 있을까요?..
물론 더 나은 방법이 있다면 알려주시면 감사하겠습니다.

주석으로 적힌 수치는 아래 코드로 만든 똑같은 함수의 실행파일 크기입니다.
실행파일 크기입니다.. (최적화 옵션이 없을 시)

ㅡ,.ㅡ;;의 이미지

cat a.txt | Program <= 이거처럼사용할수있게 Program 하는

아무생각없이 그냥 쉘에서 지원해줄거라 생각했는데
막상 위에처럼 사용해보니 전혀 먹히지 않는....
Program 에서는 파일을 입력받아 사용하는 프로그램인데
보통 grep등 파일명을 옵션으로 주기도하고 cat a.txt | grep ...
등으로 사용도 가능하자나요.. 어떻게 하는지 궁금하군요..

copy_from_you의 이미지

프로토콜 패킷 만드는 어플리케이션에 대한 질문입니다.

이 질문 여기다 올려도 될지 모르겠네요.. ^^;;

프로토콜 패킷 만들어서 뿌려주는 어플리케이션 free웨어 알고 계신분 있나요?
뭐 라우팅 메시지나 icmp그런거 마구마구 날려주는 그런거 말입니다.
다운로드 할수있는 링크나 검색할 수 있는 키워드좀 알려주세요.

그런거 없다면
상용 프로그램도 괜찮은데.. 이름 몇개만 좀 알려주세요.
그리고 윈도우용이었으면 해요..
패킷은 리눅스에서 잡지만...
보내는 쪽도 리눅스 설치하고 이래저래 셋팅하는 오버헤드가 생길것 같습니다..

jgheo의 이미지

리눅스에서 시리얼 통신에서 에러 검출 어떻게 해야 하는지...

리눅스에서 시리얼 통신하는 프로그램을 짜고 있습니다.

그런데 받는 쪽과 보내는쪽의 속도를 다르게 하면 분명

통신이 되지 않아야 하는데...

데이터가 오네요. 맞는 데이터든 이상한 데이터든 옵니다.

자체적으로 에러가 뜨고 데이터가 안와야 할듯한데...

양측에 속도세팅이 안맞을때 에러를 어떻게 찾을수 있나요?

리눅스에서는 자체적으로 자동복구 기능이 있는것인지....

답변 부탁드립니다.

mechkh의 이미지

리눅스 GUI 환경에서 OpenGL 프로그래밍하기.

리눅스 GUI 환경에서 OpenGL 프로그래밍하려고 합니다.
윈도우에서도 콘솔모드로 프로그래밍할때..
glut 등을 이용하여 프로그래밍 했지만
MFC 환경에서 opengl 프로그래밍할때는
그와 달리 프로그래밍 했었는데요~

리눅스 GUI 환경에서 opengl 프로그래밍할때는
어떠한지 궁금합니다.
전 개인적으로 Qt + opengl 을 생각하고 있습니다.
혹 저와 같은 방식으로 프로그래밍 하시는 분이나..
비슷한 경험이 있으신 분들은
답변 주시면 감사하겠습니당~ ^^

distosid의 이미지

[질문] 자료구조의 serialization 방법

GNU compiler를 사용하여 c++프로그래밍을 하고 있습니다.

c++ standard library의 set, vector, map 등의 자료구조를
소켓을 통하여 상대방에게 전송하려 할 때에 serialization이 필요하다고 알고 있습니다.
자바나 파이썬의 경우, serialize, loads등을 사용하면 되는데, c++에서는 어떤 것을 사용해야 하는지요?

혹시 없다면, 다른 방법이라도 있는 것인지 궁금합니다.

taiji76의 이미지

SNMP에 대한 궁금증...

SNMP자체에 대한 질문인지 아닌지는 확실하지가 않은데요.
프로그램을 작성하다가 질문이 있어서 글을 씁니다.

WinSNMP를 이용해서 윈도우에서 자료를 전송하고, net-snmp의 trap
daemon을 수정해서 자료를 받아서 DB에 저장하고 있습니다.
그런데 WinSNMP API를 이용해서 trap을 보내는데 자료가 전부 도착하지
않아서 tcpdump로 packet을 잡아봤는데 크기가 1514까지만 전송을
하고 나머지 부분은 전송이 되지 않더군요.
제 짧은 생각으로는 WinSNMP API쪽에서 data를 먹어버리는 것이 아닐까

pjs0722의 이미지

스레드와 알람 시그널 (솔라리스)

안녕하십니까!!

통신프로그램을 짜고 있는데.... 시그널 처리 때문에 질문을 드립니다.

일단 구조를 말씀 드리면

메인에서 스레드 하나를 호출하여

이 스레드에서 accept()를 합니다..

클라이언트가 접속하면 accept() 를 실행하는 스레드에서

스레드를 호출하여 클라이언트와 연결시킵니다...

이런 후 recv() 를 할때 알람시그널을 이용하여 timeout를 체크합니다.

(왜? select()를 안쓰고 시그널을 쓰냐는 분들이 계실지 몰라 미리 말씀드리는데

사정상 select()는 사용하기가 좀 곤란합니다)

ulra의 이미지

파일 읽고, 쓰기에 대한 질문입니다.

안녕하세요.

하나의 파일을 여러 프로세스가 읽거나 씁니다.

이때 생기는 문제가 무엇이 있는지 알고 싶습니다.

가능하다면 해결책도 알려주시면 감사드리겠습니다.

고수님들의 많은 의견 부탁드립니다.

sisbn의 이미지

loader와 execv()의 관계에 대해서 좀 정리해주실수 있는 고수분

잘 명확히 개념이 잡히질 않네여. execv() 시스템콜을 하게 되면, 커널은 파일헤더로부터 그 파일의 정보를 읽어와서 메모리 맵핑을 하고 메모리 구역을 만들게 되잖아요.
그러한 과정이 끝난후에 page fault가 발생하면, loader프로그램을 실행시켜서 얼마만큼의 page를 갖다가 물리메모리에 로딩을 해주는것이 맞는말인가요??
혹시 방금 위에 말한 과정에서 제가 잘못이해하구 있는부분 지적해주시면 더욱 감사하겠습니다.

페이지

프로그래밍 QnA 구독하기