프로그래밍 QnA

attochip의 이미지

[질문]mmap를 사용할때 에러가 나요..ㅡ.ㅡ

안녕하세요?
c초보자인데요..UNIX로 짰습니다..
메모리 맵을 이용해서 파일 카피 프로그램을 짜볼려는데
실행하면 계속 버스 오류(Bus error) (메모리가 덤프됨)
이라는 오류가 나옵니다.
프로그램은요...

[code:1]#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#include <sys/mman.h>

int main(int argc, char *argv[])
{
void fatal(char *);
int source, object;
int count;
char *smap, *omap;

if(argc < 2)
{
puts("사용법 : mmap source object");

babonara의 이미지

[재수정]recv()함수로 동적 메모리로 지정할때...

char *Msg;

if( (Msg=(char *)malloc(sizeof(char))) == NULL)

len=recv(fd,(char *)Msg,Msg_Size,0)

메세지를 가져올때 여러번 나누어서 받아 올경우가 생깁니다.

예를 들면 512 바이트를 가져와야 하는데

312개의 메세지가 도착 했는데 나머지 200개를 더 가져와야 하는데
312개 많큼 동적으로 이동해서 나머지를 가져와야 하는데
동적값을 증가 시키는 방법이 너무 애매합니다.

AirJenie의 이미지

링크에러 좀 봐주세요~

안녕하세요?
이제 막 유닉스를 배우기 시작한 초보입니다.
제가 4개의 cpp 파일을 컴파일해서 각각의 오브젝트 파일을 생성했습니다.

Compile command:
xlC_r -o DOMPrint -I../xml4c/include DOMPrint.o DOMPrintFilter.o DOMTreeErrorReporter.o DOMPrintErrorHandler.o

Error list:
ld: 0711-224 경고: 중복된 기호: .ostream::operator<<(ostream&(*)(ostream&))
ld: 0711-224 경고: 중복된 기호: .StrX::StrX(const unsigned short* const)
ld: 0711-224 경고: 중복된 기호: .operator<<(ostream&,const StrX&)
ld: 0711-224 경고: 중복된 기호: .StrX::~StrX()

kildongp의 이미지

쿼터를 프로그램으로 구현하고자합니다.

쿼터를 구현하기 위해 여러가지를 찾아 보았지만. 프로그램적으로 해결하는
마땅한 방법을 찾지 못하였습니다. 제가 하고 하는 일은 사용자의 쿼터를
조정하는 일입니다. 쿼터 관련 명령어는 edquota 가 있으며 현재의 해결은
임의대로 쿼터를 조절하지 못하고 100M200M등의 단위로 기본의 쿼터를
가진 유저를 만들어 놓은후 edquota -p 100MUserid (세팅하고자하는아이디)
를 사용하여 기본 유저를 100M단위로 수없이 만들어 놓아서 해결은 하였습니다.

하지만 궁긍적으로는 원하는 메가 단위로 프로그램을 만들어야 할거 같아서

nety2k의 이미지

sbrk 때문에 소스코드 실행이 안되요 ㅠ.ㅠ

방금 the c programming language 라는 책에서
malloc() 이거 함수 구현하는것을 열심히 타이핑 했습니다. 그런데 sbrk()이함수는 UNIX 함수 호출이라고 나오네요.. windowsxp에서 sbrk()이런 역할을 하는 함수를 가르쳐 주세요..

#include<stdio.h>
#include<string.h>

#define NALLOC 1024

typedef long Align;

union header
{
struct {
union header *ptr;
unsigned size;
}s;

Align x;
};

typedef union header Header;

static Header base;
static Header *freep = NULL;

void free(void *ap)
{
Header *bp, *p;

pelsia의 이미지

[질문] thread 소스 컴파일하는데 애러 나요. 왜 이러죠?

아래 소스를
cc -o pt -l pthread pt.c
이렇게 컴파일 하는데
cc -o pt -l pthread pt.c
"pt.c", line 24.68: 1506-280 (W) Function argument assignment between types "void*(*)(void*)" and "void(*)()" is not allowed.
이렇게 애러가 나요.
왜 이러죠...?

+1 #include <stdio.h>
+2 #include <errno.h>
+3 #include <pthread.h>
+4
+5 #define SUM_NUM 50000
+6 #define THREAD_NUM 10
+7
+8 void pth_routine();
+9
+10 int s;
+11
+12 main()
+13 {
+14 int i;
+15 pthread_t pth[THREAD_NUM];

skylandi의 이미지

fcntl()함수로 exec와 개방된 화일 관계에 대해서 알고싶어요 ㅜ

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

int main(int argc, char *argv[])
{
	int fd,res;
	fd=open("41.c",O_RDONLY);
	printf("파일 기술자:%d\n",fd);

	fcntl(fd,F_SETFD,1);
//	fcntl(fd,F_SETFD,0);
	execl("./b","b",(char *)0);
	res=fcntl(fd,F_GETFD,0);
	printf("상태값:%d 파일기술자:%d\n",res,fd);
	return 0;
}

poslyg의 이미지

컴파일 에러 좀 해결해 주세요.

다음 코드입니다.

#include <Xm/Xm.h>
#include <Xm/Label.h>

void main(int argc, char **argv) {
Widget top_level,label;
XmString motif_string;
Arg arg[1];

top_level = XtInitialize(argv[0], "test", NULL, 0, &argc, argv);
motif_string = XmStringCreateSimple ("Yes! we are testing
he Motif Labe l Widget!");

XtSetArg(arg[0], XmNlabelString, motif_string);
label = XmCreateLabel(top_level, "label", arg, 1);
XtManageChild(label);
XtRealizeWidget(top_level);

skylandi의 이미지

execl() 두번째 인수의 뜻좀 가르쳐 주세요

execl() 두번째 인수의 뜻좀 가르쳐 주세요
execl("./ls","ls","-l",(char*)0);

책에서 이해하기 어려운 글이여서 ㅠㅠ

첫번째 인수가 디렉토리 경로에 있는 실행 파일을 예기하는것 같고
두번째 인수가 영 이해가 ㅠㅜ

고운 하루 되시길

gyxor의 이미지

MASM6.1 다운받을수 있는곳 알려주시면 감사하겠습니다.

인터넷을 아무리 뒤져봐도 어셈블리어 어셈블러를 차지못했습니다.
MASM32는 찾았습니다만 .. 필요가 없습니다.
도움주시길 바랍니다.

페이지

프로그래밍 QnA 구독하기