프로그래밍 QnA + 설치 및 활용 QnA

semjase의 이미지

유용한 유틸이 Qt 구버젼으로 작성되어있다면 어떻게 설치하나요?

제 환경은 xubuntu 18.04, 그리고 QT 5.11.2가 깔려있습니다.

유용한 유틸리티 소스를 구했는데 그게 구버젼(QT 4.4)으로 작성되어 있습니다.
전 하위호환성이 있을것으로 생각하고 그냥 컴파일 해보니 에러가 나네요.

고수분들은 이런경우 어떻게 하나요?

구버젼 QT를 설치하나요? 아니면 소스를 수정해서 처리하나요?

trymp의 이미지

linux kerenl modules 이 해제될 때, module 가지고 있던 메모리는 참조가 되나요?

linux kernel 에서 module 을 사용해서 insmod(), rmmod() 할 수 있잖아요?

가령 test.ko 라는 모듈이 있을 때,

[ linux buildin kernel ]
char *g_ptr = NULL;
EXPORT_SYMBOL(g_ptr);

[ test.ko ]
extern char *g_ptr;
g_ptr = kmalloc(10);
memcpy(g_ptr, "ABCD", 5);

위와 같은 형태로 되었을 때, g_ptr 을 해제하지 않고 rmmod test.ko 가 되었을 때
나중에 커널이미지에서 g_ptr 을 참조하면 어떻게 되나요?
printk("%s \n", g_ptr);

을 하면 g_ptr 은 아직 유효한 메모리라서 "ABCD" 찍히나요?
아니면 잘못된 메모리 참조로 패닉이 나나요?

회원들의 조언 부탁드립니다.

익명 사용자의 이미지

c언어 질문드립니다.

#define _CRT_SECURE_NO_WARNINGS
#include < stdio.h >

void main()
{

FILE *fp;

char s[1024];

printf("어떤 주제를 선택하시겠습니까?(228days.txt/beautyinside.txt/canada.txt/lens.txt/orion.txt):");
scanf_s("%s",s );

fp = fopen((char*)s, "r");

while (!feof(fp))

{

fgets(s, 500, fp);

puts(s);

}

fclose(fp);

}
이런식으로 코드를 짰는데 코드가 죽어버리네요..ㅜㅜ 왜그런걸까요?
또이 이후에 사용자가 어떤 단어를 입력하면 그단어의 좌우 20글자까지 같이 출력하는 프로그램을 만들어야하는데 이건 어떻게 해아 하는 건가요??

kyuho6942의 이미지

우분투 리눅스 구조에 대해서 질문있습니다.

안녕하세요 저는 예전부터 QtCreator를 우분투에 설치하여 사용하고 있습니다. qt 공식 홈페이지에서 인스톨러로 qt를 설치하게 되면 QtCreator도 같이 설치되면서 우분투에서 데스크탑 아이콘으로 잘 인식이 됩니다. 하지만 보통 우분투에서 인식되는 데스크탑 아이콘들은 /usr/share/applications 디렉토리에 있는데 QtCreator는 앞서 말한 디렉토리에 있지 않고
~/Qt/Tools/QtCreator/share/applications 디렉토리 안에 있습니다. 구조 상 우분투가 이 데스크탑 파일을 어떻게 인식하는지 궁금합니다

trymp의 이미지

linux kernel code 에서 list_head 와 hlist_head 의 차이?

리눅스 커널 코드에서 보면 그냥 단순한 list 가 있고 해쉬리스트로 hlist 가 있잖아요.

그 두개가 무슨 차이가 있는거죠?

그냥 list 쓰면 안되나요? 용도의 차이가 무었인진 궁금합니다.

알려주시면 감사하겠습니다.

익명 사용자의 이미지

메모리 사용법에 대해 질문하겠습니다..

안녕하세요..
atmega에서 내부 메모리 외부메모리에 대해 공부하고 사용하는 중인데 정말 이해가 안가서 질문합니다..

1. 외부 메모리의 주소가 0x2200에서 0xFFFF까지인데 하나의 atmega에 외부 메모리를 두개를 연결하였습니다.
그러면 메모리 1에서 사용되는 주소가 있다면 그 외의 주소를 입력하면 외부 메모리 2로 연결이 되는건가요?..

2.그렇다면 외부 메모리의 주소설정은..어떻게하는건가요...?

3. 외부 메모리 접근 때에는

MCUCR = 0x80;
XMCRA = 0xC1;
XMCRB = 0x80;

위의 레지스터를 설정하였었는데, 내부 메모리 때에도 레지스터를 설정해줘야 하는 건가요?

읽어주셔서 감사합니다.

bao의 이미지

c언어 free 관련해서 질문이 있습니다.

구조체 B {
...
...
}

구조체 A {
....

char * buf

....
}

main ()
{
A a;
B *b = (구조체 *B)malloc(sizeof(구조체 B));

a.buf = (char *) b;

}

위에 처럼 B 구조체의 정보를 A구조체의 char *에 저장을 해놓으려고 합니다. (char * 로 한 이유는 사실 아무 데이터 형이든 상관이 없지만 여기 buf에 다른 여러가지 구조체 정보가 상황에 따라 올수가 있어 그냥 char *로 하였습니다.)

이런 상황에서 free를 할때

free(buf)를 해도 메모리 누수가 생기지 않는지 궁금합니다.
생긴다면 어떻게 해야 하는지와... 메모리 누수가 생기지 않는다면 왜 안생기는지가 궁금합니다..

kutest의 이미지

vb6 컴파일오류

private declare~
 
public sub~
end sub
 
private function~
end function
 
private declare ~   (이부분)

(이부분) 이라는 곳에서
사진처럼 컴파일 오류가뜨는데 맨위로 올려야되나요

oeo0750의 이미지

c언어 오류 해결이 어렵습니다.

자료구조를 공부하면서
정수 리스트를 구성하고, 그 리스트 안에서 정수 num을 찾는 함수를 작성하는데,
리스트에 num이 있으면 함수가 num을 포함한 노드의 포인터를 반환하고, 없으면 null을 반환하는 함수입니다.

이 함수를 이용해서 리스트에서 num이란 숫자를 가진 노드를 삭제하는 프로그램을 작성하였습니다.
한 번 봐주시면 감사하겠습니다!

WIJARD_tenorl의 이미지

Grub command

노트북을 부팅하면 바로 grub의 커맨드 화면으로 넘어갑니다.
그리고 인터넷 게시글의 명령어가 통하지않습니다
커맨드 화면과 명령어 목록은 사진으로 첨부합니다.

페이지

프로그래밍 QnA + 설치 및 활용 QnA 구독하기