프로그래밍 QnA

iamlow의 이미지

[질문] 이상한 현상... 궁굼해요 알려주세요..

자 간단한 예제입니다.

int main(void)
{
for(;;) {
printf("*");
// fflush(stdout);
// sleep(1);
}

return 0;
}

위 프로그램을 실행시키면 화면에 별표가 계속찍힙니다.

그런데 위 프로그램에서 sleep(1)의 주석을 제거하면??

화면에 *를 찍지 않습니다.
그러다 Ctrl+C를 해주면 찍힙니다~~

그리고 fflush(stdout)의 주석을 제거하면 찍히구요...

왜 플러쉬를 하면 찍히고 안하면 안찍을까요??

왜 그런건가요?? 도데체 printf와 sleep과 무슨 관계가 있는건가요?

unexpected의 이미지

TCP 통신 프로그램에서 클라이언트의 주소 지정하는 방법..도와주시길~

예전에 각 인증시스템에 따라 각각의 인증클라이언트 시스템을 운영을 하다가, 인증클라이언트 시스템을 합치려다보니 위와 같이 시스템 1의 eth1에 4개의 아이피를 맵핑해서 사용을 합니다.
그런데 각 인증시스템에는 접속이 허용된 시스템 IP에 대해서만 접속이 가능합니다.
그래서 아래와 같은 구현이 필요하게 되었습니다...

시스템 1에서 시스템 2, 3, 4번으로 TCP 접속을 할때,
시스템 2 서버에서는 클라이언트의 IP가 61.40.xx.11번에 대해서만 접속 허용을 합니다.

이한길의 이미지

데이타베이스 Division operation을 MySQL에서 어떻게 할 수 있을까요?

데이타베이스 Division operation을 MySQL에서 어떻게 할 수 있을까요?

가장 무식(?)한 방법으로 전 Cartesian-Product Operation을 이용해서 해봤습니다. 근데 이건 좀 만족스럽지 못한것이 나누는 테이블이 커지면 엄청나게 많이 곱해야 하므로 연산이 많아질것 같습니다.

혹시 무슨 좋은 방법 없을까요?

cbers의 이미지

c 모듈화 프로그래밍 공부하고있는데 컴파일을 어떻게해야할지 모르겠네요

한 소스코드에는 int i=0; 해놓구 따른코드는
exter int i; i++;

해논 상탠데요
책이 VC기준으로 설명해논거라서 VC에선 F7만 누르면
컴파일,링크 다 알아서 해준다는데
gcc에선 어떻게 해야하는지 모르겠네요
그리고 둘다 확장자는 c입니다
답변 부탁드립니다~~

leo~~~~의 이미지

시리얼 통신에 관한 질문입니다..

PC에서 시리얼로 데이터를 보내구
그 데이터를 보드에서 받는데요..
계속 데이터를 보내다가 멈추더라구요...
그래서 카운터를 세보니까
꼭 1236번째에서 멈추더라구요...
제가 프로그램을 잘못 짠건가요??
아님 시리얼 디바이스가 넘쳐서 그런건가요??
만약 그런거라면 어떻게 비우나요??

mr.lee의 이미지

message queue 에 관하여

오랜만에 IPC설비를 사용할 일이 있어서 어떤것을 사용할지 검토하던중 메세지큐에서 헷갈리는 부분이 2개 있어서 질문드립니다.

1.
메세지버퍼가 다음과 같다고 했을때.
struct msgbuf {
long mtype;
char mtext[..];
};

struct msgbuf BUF;

man을 보면 msgsnd, msgrcv 등의 함수 3번째 인자인 size_t msgsz(메세지사이즈) 의 값이 sizeof(struct msgbuf)가 아니라 sizeof(BUF.mtext) 의 의미로 나오는데 보통들 사용할때 struct의 크기를 많이 사용하던데 문제는 없는건지요?

2. struct msgbuf에서 long mtype만 필수이고 나머진 실상 원하는데로 멤버를 만들어도 된다고 알고 있었는데

smiles77의 이미지

Thread에서 이상한점

쓰레드에 관해서 이상한 점이 있어서 이렇게 질문을 하게되었습니다.
우선 코드를 보시고
void *Thread(void *obj)
{
pthread_t tid = pthread_self();
pid_t pid = getpid();
printf("pid -%d tid - %d\n", tid, pid);
while(1);
return (void *)1;
}

int main()
{

pthread_t threadID;
pthread_create(&threadID, NULL , Thread, NULL);
pthread_t tid = pthread_self();
pid_t pid = getpid();
printf("pid -%d tid - %d\n", tid, pid);
while(1);

return 1;
}

이 프로그램을 실행시, 제가 공부한 책(APE 2판외 각종 유닉스, 리눅스 관련서적들)에 의하면 두개에 쓰레드가 돌고 있어야합니다.

DefaultX의 이미지

php 코드를 cron 에서 돌리고싶은데 ..

일반적으로 쉘스크립트는 cron 에서 바로 실행이 되게 하는줄 알고 있습니다

어디선가 php 스크립트도 cron 에서 실행되게 할 수 있다고 하는데 단순히

#!/usr/local/bin/php -q

만 넣으면 가능할까요?

sijoh의 이미지

Linux backup 쉘 스크립트에 대한 질문입니다

리눅스 서버를 운영하고 있는 초보입니다.

특히 쉘 스크립트는 바보입니다..ㅡ.ㅡㅋ

크론을 이용하여 매일 날짜이름으로 특정 디렉토리를 압축하여 백업을 실시하고

어제 백업을 받은 파일은 삭제를 하는 쉘 스크립트를 만들어 보았습니다.

근데 압축 파일은 잘 만들어지는데 어제 날짜의 파일이 삭제가 되지 않네요...ㅠ.ㅠ

제가 짠 쉘 스크립트입니다.

고수님들의 조언 부탁드립니다.

#!/bin/sh
today=`date +%Y%m%d`
tar cvfpz /backup/server/mysql_$today.tar.gz /var/lib/mysql

min2to의 이미지

C언어 진수에 관한.. 질문좀 할께여.. 죄송합니다..

책을 보는 도중에.. 16진수는 ox로 시작한다고
하는데여.. 8진수는 0으로 시작하고..

근데.. 이해가 않가는게여..

int a=oxa7; //16진수..

int b=024; //8진수..
출력 해서 값을보면..답이..

16진수는.. 167로.. 나오구...
8진수는.. 20... 더라구여.. 이 계산방식이.. 정말.. 미칠듯이..
궁금하고 .. 어서.. 알수있는방법이.. 없더라구여..
부탁드립니다..

페이지

프로그래밍 QnA 구독하기