프로그래밍 QnA

horangs의 이미지

[gcc] 매크로 함수의 가변인자의 괄호 문제

gcc에서 가변인자를 가지는 매크로 함수는

상당히 편리한 방식으로

#define logprint(a, fmt...) \
{                           \
   trace((a), Fmt);         \
}

와 같이 사용할 수 있죠.

그런데 초보 프로그래머라도 익히 알만한 일반적인 코딩의 규칙으로
"매크로 함수의 인자에는 괄호를 꼭 씌워라" 라는 게 있습니다.

그래서 위에서 a는 괄호를 쳤는데, 이 가변인자는 어떻게 해야할지 참으로 고민입니다..

어딜 찾아봐도 매크로 함수의 인자에 괄호 칠 생각은 안하더군요.. ^^;;

athxue의 이미지

request_irq함수 질문드립니다.

커널에서 irq를 등록할때 같은 irq번호에 SA_SHIRQ속성을 지정하여 여러 함수들을 등록하면
해당 인터럽트가 발생했을때 같은 irq번호로 등록된 모든 함수들이 다 실행되는건가요?

ekh0324의 이미지

내부명령어 read에 대해서 묻겠습니다.

pipe를 통해서
echo "hello world"|read variable
처럼 해보고 싶은데... 안됩니다.

cat file|read variable은 안되지만

read variable < file은 또 됩니다.

파이프를 통해서 어떻게 하면 read쓸수 있을까요...

while read를 통해서는 do ... done사이에서는

쓸수있다는 점까지 확인을 했습니다.

gorinux의 이미지

[완료] awk 에서 필드 구분자를 탭 으로 쓰고 싶은데..

파일에 저장된 데이터 필드 구분이 아래와 같습니다.

번호(탭)이름   (탭)          전화번호     (탭)                 주소
1  (탭)  홍길동 (탭)  010-1011-1011 (탭) 서울시 홍길동 1110-11번지

위와 같은 형식 인데요 여기서

grep "서울시" list.txt | awk -F"구분자" '{ print $2, $4}'

이렇게 해서 추출 문자열을 아래처럼 뽑아보고 싶은데

홍길동 (탭) 서울시 홍길동 1110-11 번지

구분자가 없으면 공백이나 탭을 자동으로 필드 구분자로 인식한다고 해서 그냥
구분자 없이 했더니

lmk378의 이미지

헤더파일(header file)의 필요성에 대해 알려주세요

헤더파일이 왜 필요한것 인가요?
컴파일시 헤더파일이 아닌 c 파일이 같이 포함되어 있다면
문제없이 컴파일이 되는데...
그냥 c에 헤더파일에 사용되는 내용을 선언하여 헤더파일과 같이 사용하면 안되나요?

nbspower3179의 이미지

[완료]리눅스커널 스핀락부분 햇갈립니다

현재 자원에 접근하고 있는 cpu의 상태는 lock 상태인가요 unlock 상태인가요?
spin_lock()함수로 cpu0을 스핀락 걸고 있다고 하면 cpu0은 busy wait 상태라고 하는데 그럼 lock상태인가요??
그런데 또 책을 보면 이게 이건지 저게 저건지 햇갈립니다

책중에..
"잠금변수를 취득할 수 없었던 cpu는 잠금이 해제될 때까지 그자리에서 계속 이다리는데 이를 busy wait상태라고 합니다"
"참조접근을 하기 위해 잠금을 다중으로 실행할 수 있습니다. 여러 개의 cpu가 자원을 동시에 참조할 수 있습니다"

라고 되어있습니다. 전자를 보면 잠금이 되어 있으면 자원에 접근을 못한다는 말 같은데 후자를 보면 잠금이 되어 있어야 자원에 참조 할 수 있다는 말로 보입니다... 제가 잘 못 이해하고 있는 부분이 있으면 수정 부탁드려요.

Mr. 하늘의 이미지

[완료] PHP에서의 Singleton pattern

알맞게 Singleton pattern을 쓰면 퍼포먼스가 향상되는걸로 알고있습니다.
그런데 PHP는 request마다 자동으로 thread를 할당시키므로 Memory Sharing이 안되는걸로 아는데요,
Singleton pattern이 의미가 있나요?

kkb의 이미지

셸 스크립트로 파일의 사이즈 출력하는 방법은?

셸 스크립트 함수나 셸 명령어로 파일의 사이즈를 출력하는 방법이 있을까요?

kws4679의 이미지

함수 매개변수??(완료)

함수에 매개변수가 함수 자체일수도 있는건가요??

현재 accelerated c++ 을 공부하는 중인데 내용중에서

map> xref(istream& in, vector find_words(const string&) = split)
{

...

}

구문이 나왔습니다. 이게 제대로 이해가 안되는데요

일단 = split 은 초기화라는것까지는 그래도 인정할수 있겠는데 매개변수 자체가 find_words 라는 함수(? 거기다가 왜 const string& 에

직접적으로 들어가야할 매개변수가 없는지...) 가 매개변수로 이루어진다면 어떻게 되어야 하는지 궁금합니다!!

lmk378의 이미지

plt와 got에 관해 질문있습니다.

얼마전 linking과정에 대해 질문했던 사람입니다.
많은 도움으로 어느정도 감은 잡게 되었지만 아직까지 궁금한 점이 남아 다시 포스팅했습니다.
plt와 got에 관련된 건데요
제가 이해한것은
plt는 현제 프로그램이 동작하는데 필요한 외부함수의 심볼을 만들기 위해 외부함수loader와 연결해 주는 역할을 하는 table입니다.
즉 loader 함수에 필요한 인자를 push한 후 got의 첫번째 심볼인 loader를 호출해 필요한 외부함수의 주소를 받아와
got를 완성해주는 것으로 이해했습니다.
허나 아직 궁금한점이 있습니다.(사실은 이전보다 더 생겼습니다.)

int main() { printf("main\n"); return 0; }

위와같은 test용 소스를 작성했습니다.
objdump로 보면

페이지

프로그래밍 QnA 구독하기