프로그래밍 QnA

macmac83638의 이미지

갯수가 정해지지 않은 함수의 파라메터 넘기기

예를 들어 printf(char* format, ...) 과 같은 것이 있고..
제가 myPrintf(int mode, char* format, ...) 라는 것을 만들어서

myPrintf(int mode, char* format, ...)
{
       if (mode > currentMode) {
            printf(format, ...); <- 위의 파라메터를 그대로 넘기고 싶습니다.
       }
}

이렇게 하고 싶은데.. va_list나 va_start를 꼭 써야 가능한건지요 ?
만일 그렇다면 어떻게 해야 하는지 알고 싶습니다만..

neohwang의 이미지

천하의 하수를 구원해 주세요. realloc() 관련

[code:1]#include <stdio.h>
#include <string.h>

int main(int argc, char *argv[])
{
struct list
{
int id;
unsigned long time;
};
struct list **list=NULL;

int i,j;

for(i=0;i<100;i++)
{
if(i==0) list=malloc(sizeof(struct list));
else list=realloc(list,(i+1)*sizeof(struct list));

if(list==NULL) break;

list[i]->id = i;
list[i]->time = 4444;
}

if(i>0)
{
for(j=0;j<i;j++) printf("%d %ld\n",list[i]->id, list[i]->time);

chykrkr의 이미지

POLLRDNORM, OPEN_MAX 매크로 사용시 컴파일문제

Unix Network Programming 이란 책에서 예제를 하나 컴파일 하려고 했는데 에러가 나서 말이죠. 고쳐서 돌리긴 했는데, 왜 이런 에러가 나는지 궁금하네요. 생략한 소스는 두개가 같기 때문에 선언부만 올렸습니다. 실제로 선언부에서 생긴 문제더라구요.

원래소스

#include "unp.h"
#include <limits.h>

..... 중략

이걸 컴파일하면 POLLRDNORM, OPEN_MAX 매크로 가 정의 안 되었다고 뜨고 컴파일 에러가 납니다.

제가 고친 소스

#include <linux/limits.h>
#include "unp.h"

하하의 이미지

Linux &lt;-&gt; AIX

Linux <-> AIX 두 기종간에 문자열 처리 방식이

다릅니다.

예를 들어 문자열을 실행 바이너리에서 읽어올때 최상위

주소 부터 읽을지.. 아님 최하위 주소 부터 읽을지.. 다름니다.

제 말이 맞는 건가요?

네트웍에서 얘기되는 리틀엔디언 , 빅엔디언 문제가 이런식으로

도 있어 리눅스에서 개발한 프로그램을 에이아이엑스에서 돌릴때

다른 인코딩 방식을 채택해야 하는데..

제 짧은 소견으로 말해 보았습니다. 이와 관련된 다른 이야기도 있

찬스의 이미지

VC++ 에서 디렉토리 읽어오기..

안녕하세요~ *^^*

M$ VC++ 으로 FTP 클라이언트 프로그램을 만들고 있는데요.
막히는 부분이 좀 있어 질문 올립니다.

ALFTP의 경우에 실행시켰을때 왼쪽 프레임에 디렉토리 목록이 바탕화면을 최상위 디렉토리로해서 내 컴퓨터 -> (C: || D: || E: |...) 식으로 보이게 구현했
던데, 이렇게 구현할려면 어떤식으로 구현해야 하나요?
VC++은 첨이라 _chdir(), _getcwd() 등으로 구현해볼려고 해도 도저히 엄두
가 않나네요.. ㅠ.ㅠ

아시는 분은 제발~ 답변 좀 해

wowcode의 이미지

여러 버젼의 gcc를 설치하는 방법이 있을까요?

SUN에 구현된 프로그램을 LINUX에 포팅하는 작업을 하다가 라이브러리 문제로 gcc 2.95.2를 사용해야 합니다. 현재 설치된 버젼은 3.2.2 이구요. 두버젼을 같이 설치한 후 사용하려면 어떻게 해야 하나요?

혹시 도움이 될만한 url 부탁 드립니다. 검색 해봐도 잘 안보이네요..

감사합니다.

you의 이미지

커널 내에서 프로세스간의 변수 공유 방법...?

커널 모드에서 수행하는 두 프로세스가 있다고 한다면
이들간에 변수를 공유하는 방법이 있을까요?
shared memory처럼 라이브러리 같은것이 있나요?

생각해보면 lock을 걸어놓는다거나...푼다거나...
뭐 그런 작업을 위해서는 공유변수같은걸 사용하고 있는것 같긴 한데...

혹시 아시는분 답변 부탁드립니다.

tazanboy의 이미지

소켓 프로그램에서 힌트좀 얻고싶습니다.

다음과 같은 프로그램을 만들려고 합니다.

소켓 프로그램을 실행시켜서 클라이언트로부터 명령을 입력받고,
출력결과를 클라이언트로 돌려줍니다. 이때, 명령을 입력받으면 해석해서
해석한 명령과 일치하는 데이터를 시리얼로 보내어서 시리얼로부터
응답 데이터를 받습니다. 그리고 이 데이터를 클라이언트로 보냅니다.

시리얼에 부착된 장비는 반이중 통신 방식입니다. 그리고, 초기화 과정이
필요합니다. 초기화 과정이 끝나면 특정 시간동안 아무런 명령이나

novice의 이미지

GUI 프로그래밍을 어떻게?

이제 막 자바와 C언어를 할 줄 알게된 초보입니다.

커맨드 라인에서가 아닌 GUI프로그램을 하나 짜보고 싶은데요.

SWING으로 해볼까.. 하다가.. 초보에겐 너무 힘들것 같다는 생각이 앞서더군요;

이 방대한 소스를 내가 과연 짤 수 있을까-_-;;;

VI로 하나하나 짜기에는 인간의 수명이 너무 짧은 것 같은데 웹 페이지를 만들때와

마찬가지로 편리한 툴이 있지 않을까 싶어 질문 드립니다.

분명 하나하나 다 짜진 않으실것 같다는 생각에..

이런 것

sadrove의 이미지

프로세스끼리 변수공유..?

fork()로 자식프로세스가 생성되는데..
생성되고 소멸되는 프로세스들간에 하나의 변수가 공유가 가능한가요.?
예를 들어 아래와 같이요..

int a = 0;

while(조건){
    if((pid = fork()) < 0) error_handling("fork() error!");
    else if(pid==0){
       a += 1;
       exit(0);
    }
}
printf("%d\n", a);

위와같이 부모는 계속 반복해서 자식을 생성하고요...
자식에서 a변수의 값을 1씩 증가하고 싶습니다..

페이지

프로그래밍 QnA 구독하기