프로그래밍 QnA

Mr. An의 이미지

adjacency_list로 구현한 dijkstra알고리즘 C 코드를 구할 수 있

일반 책에도 그렇고 인터넷 찾아봐도

adjacency_matrix로 구현한 dijkstra알고리즘 코드만 있을 뿐

adjacency_list로 구현한 코드는 나오질 않네요. :cry:

adjacency_matrix로 구현한 dijkstra알고리즘 코드가 있는 곳

아시는 분 계시나요?

아시는 분 계시면 꼭 좀 알려주시기를 부탁드립니다. :D

umcy의 이미지

모듈에서 파일을 열려면?

모듈 프로그래밍을 공부하다가 궁금한 것이 있는데요.

모듈을 메모리에 로드하고 나서 모듈에서 직접 파일을 열고, 그 안에 있는 내용을 읽거나 쓸 수 있도록 해 주고 싶습니다.

그런데 먼저 파일을 열려고 하는데 잘 안되는군요.

커널 버전 2.4.13이고요.

먼저 간단히 파일을 열고 닫는 것을 테스트해보려고 다음과 같이 프로그래밍했는데

-----------------------------------------------------------------------------
... (생략) ...

void ReadFile(char *Filename, int StartPos)

hurryon의 이미지

[질문] 포인터 초보...char * 을 리턴하는 함수는 어떻게 받아야

[code:1]
[hurryon@note 0508]$ cat 2.c
#include <stdio.h>

char *arr_print(char *source, char *des);

char *arr_print(char *source, char *des)
{
des = source;

printf("%s\n", source);
printf("%s\n", des);

return des;
}

int main(void)
{
char *source = "hurryon";
char des[50];

/* des = arr_print(source, des); */

printf("%s\n", source);
/* printf("%s\n", des); */

decacros의 이미지

포트 제어 하는 함수 ioperm() 함수를 루트권한 말고 일반사용자

병렬포트를 제어를 일반사용자권한으로 할수 없나요??

ioperm() 함수에서 operation not permitted 라는 메세지가 뜹니다.

소스 코드 올리겠습니다. setuid() 함수를 쓰면 된다는데. 아무리 해도 안됩니다.

지금 // 주석 된 부분을 setreuid(500,0),setreuid(0,0),setreuid(0,500) 이렇게

여러가지 경우 해 보아도 안되었습니다.

setuid(0);
if(ioperm(BASE_PORT, 3, 1))
{
perror("ioperm");
exit(1);
}

#include <sys/io.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>

luvweb의 이미지

gcc 3.2.2에서 간단한 stl 예제 에러..

gcc (GCC) 3.2.2 20030222 (Red Hat Linux 3.2.2-5) 와 gcc 2.95.3
두 버전에서 컴파일을 하는데..

gcc 3.2.2에선 에러가 나고 gcc 2.95.3에선 정상으로 컴팔됩니다.
정말 이상해서 아시는분 있으시면 답변줌 부탁드립니다.
(제가 알기로는 gcc3.2에서 stl에 정상적으로 되는걸로 알고있느뎀 ㅡㅜ)
테스트 코드는
[code:1]
#include <vector>

int main()
{
// 각 숫자들을 1로 모두 세팅한다.
const int sievesize = 100;
vector<int> sieve(sievesize, 1);

// 1로 세팅된 값들 각각에 대해 이 수의 배수들을 0으로 세팅한다.

gyxor의 이미지

c++ 클래스에 관한 간단한 내용

class a{
int i1;

class b{
int i2
};
};
이런 구조에서요
class a의 함수에서는 class b의 객체를 선언해서 class b의
int i2의 멤버에 접근가능한데요
거꾸로
class b의 멤버에서 class a의 멤버인 int i1에 접근한다는것은
불가능한 이야기 인가요???
궁금합니다.

gyxor의 이미지

c 벡터 템플릿 클레스는 왜 사용하나요?

// vect1.cpp -- introducing the vector template
#include <iostream>
#include <string>
#include <vector>
using namespace std;

int main()
{
double *scores = new double[2];
scores[1] = 3;
double pd = scores[1];
cout << pd;
vector<double> ve(10);

ve[3] = 4;

double ps = ve[3];

cout << ps;

return 0;
}

벡터 템플릿을 이용하게 되면 동적메모리가 할당된다는것은

알고있습니다.

그렇다면 new에 의해 할당해도 충분히 배열처럼 사용할수도 있고

불편한점이 없는거같은데요 왜 백터템플릿을 사용하는지 알고싶습니다.

leolo의 이미지

uint32_t....

H file
struct ip{
    uint32_t first;
    uint32_t second;
} __attribute__ ((packed));
extern struct ip ipbf;

C file
struct ip ipbf;
...
memcpy(&ipbf, buf, sizeof(struct ip));

printf("%02x\n", ntohl(ipbf.first);

위 코드의 결과는 d2754101로 나옵니다..
여기서.
d2는 210
75는 117
41은 65
01은 1로 나오게 하고 싶습니다..
어떻게 출력을 하면 될런지 알고 싶습니다.
결과적으로 uint32_t형으로 선언된 IP의 주소를
각각 정수형으로 출력하고 싶습니다..

gyxor의 이미지

c++ 내포클래스의 사용이유 정말 궁금합니다.

#include<iostream>
using namespace std;

class a{
    public:
    int ai;		
	a()
	{
		ai = 100;
	}
};

class b
{

     public: 

	int bi;
	void view()
	{
	a i;
    	cout <<  i.ai;
	}
};

int main()
{
           b be;
           be.view();
           return 0;
}

이러한 예제에서 class a는 class b의 정의보다 앞서야 한다는 규칙만따르면 내포클래스와 다를것이 거의 없습니다. class b 의 선언안에 내포클래스로 들어가더라도 달라지는것이 거의 없습니다.

페이지

프로그래밍 QnA 구독하기