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

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의 커맨드 화면으로 넘어갑니다.
그리고 인터넷 게시글의 명령어가 통하지않습니다
커맨드 화면과 명령어 목록은 사진으로 첨부합니다.

WIJARD_tenorl의 이미지

Grub command

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

song689의 이미지

파일 디스크립터 관련 질문입니다!

#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main(int argc, char *argv[])
{
   int fd;
   if (fd = open(argv[1], O_RDWR) == -1)
      printf("파일 열기 오류\n");
   else printf("파일 %s 열기 성공 : %d\n", argv[1], fd);
 
   close(fd);
   exit(0);
}

위 코드를 실행시켜보았는데 fd가 0이 나오네요.
제가 예상한 결과는 3이 나와야될텐데 왜 0이나온거죠? 0,1,2는 기본적으로 할당되어있는 fd 아닌가요??

semjase의 이미지

basket note를 make하는데 에러가 났습니다

xubuntu 18.04 사용중입니다.
소프트웨어센터에 있는 basket note가 너무 옛날거라 최신버젼 소스를 받아서 컴파일중입니다.
(ver 2.10 -> ver 2.49)

설치문서에 이렇게 되어있습니다.

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=`kf5-config --prefix` -DQT_PLUGIN_INSTALL_DIR=`qtpaths --plugin-dir` ..
make
# make install

cmake 까지는 온갖 삽질하다 모든에러 다 수정해서 통과했습니다
make에서 에러가 나는데요..

ljs0652의 이미지

scanf 질문이 있습니다.

char Time[24];
char A[20];
char B[20];

printf("입력 : ");
scanf("%s[^\n]", Time);
printf("입력 : ");
scanf("%s", A);
printf("입력 : ");
scanf("%s",B);

printf("Time : %s \n", Time);
printf("Time : %s \n", A);
printf("Time : %s \n", B);

이런식으로 입력을 받으면
Time에서 2018-01-01 까지만 받으면 셋다 정상적으로 받을 수 있는데
2018-01-10 20:20:20 이런식으로 받으면
두번째 A가 생략이 되고 세번째 B를 받게 됩니다 왜 이런 증상이 일어나는거죠??

WIJARD_tenorl의 이미지

우분투 커널 패닉

커널 패닉이 일어났는데 해결 방법을 모르겠습니다

WIJARD_tenorl의 이미지

우분투 커널 패닉

커널 패닉이 일어났는데 해결 방법을 모르겠습니다

페이지

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