프로그래밍 QnA

labien의 이미지

C에서 variable-length argument를 다시 파라미터로 넘길때

로그를 남기는 함수를 하나 만들고 있는데요...이 함수는 설정에 따라 파일이나
syslog, 네트웍으로 로그를 날려줍니다...

make_log라는 함수가 있다고 할때 이 함수는 variable-length argument를 받아 이전에 설정한 설정치에 따라 다른 target으로 로그를 쏘게 되는데요..
syslog일때는 그대로 메시지를 syslog함수를 호출하여 날려줍니다...근데 문제가 생겼습니다.-_-
아래의 예제 코드에서

[code:1]
void makelog(int priority, char* fmt,...)
{
syslog(priority, fmt);

judaspro의 이미지

간단한 프로그램중에서 ㅡ.ㅡ

어느 책에 보니까

extern int far *stack;

정렬할때 헤더파일에 포함되어 있는 문장입니다.

이곳이 에러가 나는데 에러를 수정하는 것 보단...

위에 문장이 이해가 안갑니다.

솔직히 처음 보는 문장입니다.

이문장에 대해서 설명좀 해주시면 감사합니다.

제가 가지고 있는 책에는 저 부분에 대한 설명이 나와있지를 않네요.

그럼 즐거운 하루 되세요.

ninakhlee의 이미지

메모리 할당 관련....

malloc, calloc, realloc등의 메모리 할당 함수로 할당을 하면
제대로 할당이 되지 않으면, NULL 값을 넘겨주잖아요.

보통 프로그래밍할때 메모리 할당후 NULL인지 아닌지를
꼭 검사를 하나요?
아니면, 거의 대부분 할당이 잘 될꺼라고 생각해서 그냥
프로그래밍해도 문제가 없나요..

물론, 이론적으론 문제가 생길꺼 같지만..
대략적으로 어떤지 궁금해서요.

제가 지금 프로그래밍하는데 메모리 때문에 아주 힘들어요.
디버깅이 잘 안되서..혹시나 해서요..

withlhw의 이미지

트리를 거꾸로 생성하는 방법?

안녕하세요?

허프만 코드를 이용해서 압축 프로그램을 구현중에 있습니다.

트리를 이용하여 구현을 할 계획인데..

보통 트리는 root부터 삽입이 들어가잖나여..

근데 예를 들어서 리프(leaf)노트가 10개가 주어지고

이 리프노드를 이용해서 트리를 밑에서 구성해서 root까지 올라가는

방법이 뭐 없을까여?

febace의 이미지

소켓 쓰기, 읽기 관련 의문점

@@ 쓰기의 경우
1) 소켓을 블락(기본)으로 옵션을 주었을때.
소켓에 1만 바이트를 씁니다. 그 결과가 궁금합니다.
# 제가 예상 다음과 같은 경우의 수가 존재 하는 듯 하고요
a. 만 바이트를 쓸때까지 기다린다. 그리고 만의 값을 반환 한다.
b. 만 바이트를 쓰다가 쓰기 힘들면, 포기한다. 그리고 쓴 만큼의 양을 반환한다.
# 저는 a. 의 현상이 읽어날것 같습니다.

2) 소켓을 논블락으로 주었을때.
소켓에 1만 바이트를 씁니다. 그 결과가 궁금합니다.
# 제가 예상해보면 다음과 같습니다.

sungjin의 이미지

struct를 쓰고 읽는 것에 대해 ->>재질문

아래의 질문은 지금 문제를 해결하기 위해 테스트하는 중에 나온 문제
였는데. 답변이 많은 도움이 되었습니다.
제가 겪고 있는 문제는 다음과 같습니다.
SRAM을 장작한 보드에 구조체로 읽고 쓰기를 할려고 합니다.
코드의 내용은 다음과 같고 SRAM의 가상 주소는 다음과 같이
0xd0000000 로 정해져 있습니다.
먼저 코드를 보면
ss.h
[code:1]
#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <sys/file.h>

#define SRAM_BASE 0xd0000000

struct foo {

sungjin의 이미지

struct를 쓰고 읽는 것에 대해서

다음과 같은 코드가 있습니다.
ss.h

#include <stdio.h>
#include <stdlib.h>

struct foo {
    char    a;
    char    b;
    short   c;
    int     d;
};

xx.c
[code:1]
#include "ss.h"

main()
{
struct foo *bar;
bar->a = 0x0a;
bar->b = 0x0c;
bar->c = 25;
bar->d = 1000;

printf("a(0x0a)\t %p %d\n", &bar->a, bar->a);
printf("b(0x0c)\t %p %d\n", &bar->b, bar->b);
printf("c(0025)\t %p %d\n", &bar->c, bar->c);

arboris의 이미지

한글 코드를 변환하는 프로그램을 php로 짜고 싶습니다.

아직도 iso-2022 kr 이나 다른 charset을 쓰는 사람들이 있어서,
그것을 자동으로 EUC-KR로 변환하는 프로그램을 간단하게 짜고 싶습니다.
검색용어나 그런것을 다루는 사이트, 가장 바라기는 이미 만들어져 있다는 답변을 바랍니다. ㅋㅋ

zZze의 이미지

fopen64() 사용시..

리눅스에서.. 점 큰 화일을 사용할려구 점 뒤적거려 보니까..
fopen64()라는 넘이 있네요.. 사용해 보니 잘 되긴 하는데..
컴파일 해 보니 warning이 뜹니다..

Quote:

warning: implicit declaration of function `fopen64'

이렇게요.. :cry:

그냥 stdio.h 만 include 해 주면 되는게 아닌가요??
stdio.h에는...

Quote:

#ifdef __USE_LARGEFILE64
extern FILE *fopen64 (__const char *__restrict __filename,
__const char *__restrict __modes) __THROW;
extern FILE *freopen64 (__const char *__restrict __filename,
caeman의 이미지

Solaris, HP-UX, windows 환경에서 실행한 결과가 틀린 문제에

아래 소스 코드는 windows 흑백 BMP 파일을 읽어서
특정한 목적의 ASCII Text 파일을 만들어 내는 것 입니다.
Solaris, HP-UX, windows 환경에서 컴파일과 실행은 모두 잘되나
실행한 결과값이 상이합니다.
Solaris 환경에서만 실행한 결과값을 유효하게 사용할 수 있습니다.
OS에 따라 변화되는 테이터 형과 상수가 있는 것 같습니다.
이 코드를 windows 환경에서 제대로 사용하려면 어느 부분을
변경하여야 하는지 문의 드립니다.

[code:1]/*--------------------------------------------

페이지

프로그래밍 QnA 구독하기