프로그래밍 QnA

ssif의 이미지

win32 를 이용한 시리얼 프로그래밍에서 에러의 원인을 잘 모르

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

//#define PORT "COM2"
#define BUFSIZE 3

OVERLAPPED ov;
char buf[BUFSIZE];
HANDLE hCom;

int main(void)

{
DCB dcb;
//HANDLE hCom;
BOOL fSuccess;
char *pcCommPort = "COM1";
//int buf[BUFSIZE];
DWORD dwWritten;
int writefile_return;

/********************************************************************************
비동기 입출력은 WINDOWS 2000/NT 만 지원이 된다.
즉,98SE ,ME 이하의 버전에서는 동작하지 않는다.
CREATEfILE() 에서 플래그는 6번째 인수에 FILE_FLAG_OVERLAPPED 로 사용하면 된다.

preisner의 이미지

library 복사시 --strip-all 이 무엇을 strip 하는 거죠?

objcopy 의 옵션에 보면
--strip-all Remove all symbol and relocation information
이런게 있는데요
symbol을 제거 한다는게 어떤 뜻이죠?
그리고 strip 하면 용량이 많이 줄어드는데요
실행에는 문제가 없는 건가요?

감사합니다.

k3rnel의 이미지

커널소스를 보다가,,궁금점이 생겨서요

안녕하세요

다음은 hash 리스트를 추가하는 소스입니다,
http://lxr.linux.no/source/fs/buffer.c?v=2.4.18#L481

여기서 소스분석을 해보려니 이해가 되지 않는 부분이 있어서 질문드립니다,

========================================
#define hash(dev, block) hash_table[(_hashfn(HASH(dev),block & bh_hash_mask)]

static inline void __insert_into_hash_list(struct buffer_head *bh)

struct buffer_head **head = &hash(bh->b_dev, bh->b_blocknr);
struct buffer_head *next = *head;

*head = bh;
bh->b_pprev = head;

xster의 이미지

CVS 등에서 개발 도중의 내용 관리는 어떻게 하십니까?

현재 3~4명이서 관리하는 프로젝트가 있습니다. 소스 코드는 서로 다른 제품 지원을 위해서 #ifdef 구문이 꽤나 복잡하게 들어가 있습니다. 한 제품에서 새 기능을 추가하기 위해선 열심히 #ifdef로 맞춰줘야 하는 상황입니다.
문제는 상당히 큰 기능 집합을 새로 추가하려고 할 때입니다. 기능이 상당히 커서 변경 사항도 많기 때문에 모든 내용을 변경하고 CVS와 같은 버전 관리 툴에 집어 넣으려고 하면 너무 오랜 기간 버전 관리가 안 되고 바로바로 집어 넣으려고 하면 변경 사항이 너무 자주 발생해서 불필요한 변경 사항에 대한 내용이 많이 들어가게 됩니다.

leo~~~~의 이미지

타이머를 사용해서 1초에 한번씩 값 변화시키는 방법 알려주세요

타이머를 사용해서
1초마다 값을 변화시키고 싶은데요..
그니까 i라는 변수에 1이 있다 가정하구요
i의 값을 1초마다 1씩 증가 시키려구요...
그리고 1초에 한번씩 값이 변화하면
그 값이 화면에 나타나게 하고 싶어요....
제가 하려는게 1초마다 값이 변화하면
그 변화한 값을 시리얼을 통해서
전송 하려는 거거든요....
어떻게 하나요???답변 부탁드립니다~~~

philossh의 이미지

CPP const키워드.. 그리고 참조에 대해...

template<class T>
class CArray
{
public:
	T& operator[](const int idx);
};

class TelBook
{
	CArray<Person*> list;
public:
	Void print(const int i) const
	{ list[i]->print(); }
}

TelBook::list의 속성을 변경하지 않을 의도로 const를 썼지만..
-> 이항 '[' : 왼쪽 피연산자로 'const CArray<T>' 형식을 사용하는 연산자가 없거나 허용되는 변환이 없습니다.
이런 소리를 하네요..
(const keyword를 빼면 정상적으로 동작합니다..)

sale20의 이미지

libnet programming에 대한 전반적인 내용과 자료를 얻고싶습니

네트워크 와 프로그래밍을 공부하는 학생입니다.
libnet의 소개와 특징,기능,관련소스 등에 대해 알고싶습니다.
회원분들 항상 행복하세요!!~ ^^ 많은 자료 부탁드립니다.

nodeps의 이미지

mod_throttle

mod_throttle.c 의 한부분입니다.

static t_visitor *
get_remote_user(t_visitors *vp, char *user)
{
t_visitor *v, **prev = &vp->head;

if (vp->head == (t_visitor *) 0 || user == (char *) 0)
return (t_visitor *) 0;

for (v = vp->head; v->next != (t_visitor *) 0; v = v->next) {
if (*v->remote.user == '\0' || ap_strcasecmp_match(v->remote.user, user) == 0)
break;
prev = &v->next;
}

/* Move the entry to the front of the list. */
*prev = v->next;

jj의 이미지

svn에서 $revision$ 활용에 대해서

안녕하세요
subversion을 잘 사용하고 있습니다.
그런데 버젼넘버를 찍어주는 기능을 프로그램에 넣고 싶더군요. (svn revision)
print_version()
{
printf("SVN revision: $Revision$\n");
}

이런식으로 print_version.c라는 파일을 추가하고, svn setprop:keywords 으로 Revision키워드를 설정했습니다.

일단 동작은 잘합니다.

문제는 print_version.c가 commit되지 않으면 print_version.c안의 내용도 그대로 있더군요, 즉 다른 파일만 고치고 commit하면 print_version.c안의 $revision$이 갱신되지 않습니다. 항상 print_version.c를 수정하고 commit해줘야 저 파일이 업데이트 됩니다.

hyji의 이미지

ldconfig 문제

일단 제가 알고 있는 방식이 맞는지....

그동안 제가 한 방법은 /lib에 제가 만든 공유 라이브러리를 넣구요...
ldconfig -C ld.conf.cache -f ld.so.conf를 실행했었습니다.
잘 작동되었구요...
그런데 제가 만든 라이브러리는 다른 디렉토리에 넣으려구 해서요

/me/lib에 제가 만든 공유 라이브러리를 넣구요...
ld.so.conf에 /me/lib를 추가하고
고담에
ldconfig -C ld.conf.cache -f ld.so.conf 를 실행해줬습니다.
이론상 되어야 할 거 같은데... 라이브러리를 못찾네요...
물론 LD_LIBRARY_PATH에 /me/lib를 지정해주니 되긴 되네요

페이지

프로그래밍 QnA 구독하기