프로그래밍 QnA

dalant019의 이미지

가변인자 매크로 만들기~

#define TRACE(fmt, args...) printf(fmt, ##args)

리눅스에서 위를 잘 사용하고 있었는데 이것을 visual C++에 복사해서 썼더니 ㅠㅠ 안되네요~
문법은 같아야 되는 건 아닌지~ 이 문법은 정통파 계열이 아닌 것인지~ 아시는분 가르켜주세요~(이리저리 검색해봤지만 못 찾았습니다. 아~ 키워드가 안 생각나요 ㅠㅠ)

moonzoo의 이미지

각 system call 이 걸리는 시간에 관한 자료 있나요?

C언어에서 system call이나 , stdio library 등과 같이

"일반적으로 제공되는 함수"를 사용할때 ( 마땅한 표현이 안떠올라서 이렇게 표현했습니다).

각 함수들이 동작하는 시간에 대한 통계자료가 혹시 있을까요?

예를 들면 write 는 1 micro sec, fwrite는 5micro sec 와 같이 말이죠..(cpu clock도 무방.)

또는 %(나머지 연산), / (나누기 연산) 등에 걸리는 시간은 얼마라던지..

twins9의 이미지

Multiple declaration 에러

보통 이런문제는 global변수 선언에서 발생하는걸로 알고 있습니다.

그래서 C에선 extern으로 해결했었는데요,

C++을 사용하다보니, 이런 Global 변수를 class의 instance로 선언하는경우가 생겼습니다.

그런데 class의 instance는 'extern'선언이 되질 않더군요.

어떻게 해결해야 하죠?

어디서 봤는데, class CBloblo;와 같이 임시로 header에 써주면 된다고 하는데,

lovejin0309의 이미지

토큰 분리하는 알고리즘 질문입니다.

다음과 같은 태그가 있습니다.

<eid> 101010 </eid>
<name> hi </name>
<title> hihihi </title>
<argument> babo </argument>

다음처럼 토큰을 하나씩 분리하고 싶습니다.

while(1){
  error = TOKEN(char *dest, char *source);
  printf(" 분리된 토큰은 %s입니다. \n", dest);
}
 
결과 
 
분리된 토큰은 <eid> 입니다. 
분리된 토큰은  101010 입니다. 

athxue의 이미지

c언어 소스 질문드릴께요

다음과 같은 코드에서 에러나 나는데 이유가 뭔지 알수가 없어요

#include <stdio.h>
 
int main()
{
    char string[50][50];
    char **p;
    p = string; //이 줄에서 어떤 컴파일러는 에러를 또는 경고를 내보냅니다
}

제가 뭐를 잘 못 알고 있는건지 저런 문제가 생기더라구요

superkkt의 이미지

libz.so.1, needed by ..., may conflict with libz.so.0 --> 이 에러는 왜 발생하는건가요?

솔라리스에서 개발하던 프로그램을 리눅스에서 컴파일 했더니 이런 에러가 나오는군요.. 산 넘어 산이라고.. 구글에서 검색을 해봤는데 관련된 질문을 몇개 있는데 답변이 없네요.

gcc -I/usr/local/mysql/include/mysql -I/home/ktkim/libcurl/include/curl -Wall -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DCONFIG_FILE_PATH="\"/usr/local/etc\"" -L/usr/local/mysql/lib/mysql -L/home/ktkim/libcurl/lib -o msn_bot main.o config_file.o connection.o global.o md5.o show_msg.o -lnsl -lm -lmysqlclient -lz -lcurl

망치의 이미지

게시판을 만들던중 도배 방지 기능을 넣는중에 의문점이 생겼습니다. (2)

그야말로 단순한 게시판입니다. 부가기능 없이 단지 목록, 쓰기, 보기 정도만 됩니다.

이 게시판에 도배 방지 기능을 넣기 위해 2가지 기능을 적용해두었는데 오늘 이게 무시되는 상황이 발생해서 당황스러워서 질문을 남깁니다.

첫번째 방법은 브라우저 쿠키를 이용해서, 글 쓸때마다 쓸때의 시간을 특정 쿠키에 넣어두고, 글 작성시마다 해당 쿠키값을 검사합니다. 해당 쿠키의 값과 현재 시간 함수를 이용해 일정시간이 지나지 않았을경우 도배로 인식하고 데이터 입력을 거부합니다. 이 방법은 공격 프로그램 사용등의 고의적인 공격시엔 무용지물이라 생각합니다.

aprilblue의 이미지

mysql api에 관한 질문입니다

안녕하세요

이번에 api를 접하게된 학생입니다

음..다름이 아니라 Linux 서버에서 mysql c api를 이용하여

프로그램을 짰는데요

DB 서버는 프로그램 서버와 따로 있는 상태입니다.

myql 변수를 main.c에서 전역변수로 선언하고

다른 파일에서 extern을 이용하여 사용하고 있는데요

쿼리를 날리기 전에는 mysql_ping()으로 검사하고

bizzare의 이미지

[질문] std::list의 size()관련 (64비트)

다음과 같은 코드를 빌드해봤습니다.
32비트로 빌드할 때는 아무 문제없이 잘 되는데,
64비트로 빌드할 때는 int iSize = a.size(); 에서 warning이 나는군요.

warning : conversion from 'size_t' to 'int', possible loss of data

결국 std::list의 size()가 size_t 타입으로 리턴한다는 이야기인데,
그동안 수없이 int 또는 UINT로 이 값을 받아서 쓰고 있었거든요.

사랑천사의 이미지

GCC 컴파일시 PASCAL 지원 하게 하려면 어떻게 해야 할까요?

안녕하세요?
이여송 사도요한입니다.

제목 그대로 입니다. GCC 3.4 이후로는 안 되는 건가요? --enable-languages=c,c++,objc,java,f77,ada,pascal 하면 안 되는군요. pascal은 지원 인 된다고 걸립니다. 아, 물론 차음엔 안 걸리고요. make all 하면 걸립니다 음...

PASCAL에 대한 라이브러리가 혹시 필요하다면, 그걸 설치 해야 겠는데 리눅스에서 파스칼을 돌리게 할 방법을 잘 모르겠군요. 저는 GCC에 파스칼을 컴파일 할 수 있게 만들어야 할 의무(?)가 잇는 사람입니다. 그래서 어덯게든 하긴 해야 겠는데... 데비안에서 GCC가 PASCAL을 컴파일 하더군요. RH계열의 제가 써 본 리눅스 배포판 들은 되는걸 못 봤습니다 으...

페이지

프로그래밍 QnA 구독하기