(gdb) help generate-core-file

Save a core file with the current state of the debugged process.

Argument is optional filename.  Default filename is 'core.<process_id>'.

(gdb) generate-core-file


 kill -l

 1) SIGHUP       2) SIGINT       3) SIGQUIT      4) SIGILL       5) SIGTRAP

 6) SIGABRT      7) SIGBUS       8) SIGFPE       9) SIGKILL     10) SIGUSR1

11) SIGSEGV     12) SIGUSR2     13) SIGPIPE     14) SIGALRM     15) SIGTERM

16) SIGSTKFLT   17) SIGCHLD     18) SIGCONT     19) SIGSTOP     20) SIGTSTP

21) SIGTTIN     22) SIGTTOU     23) SIGURG      24) SIGXCPU     25) SIGXFSZ

26) SIGVTALRM   27) SIGPROF     28) SIGWINCH    29) SIGIO       30) SIGPWR

31) SIGSYS      34) SIGRTMIN    35) SIGRTMIN+1  36) SIGRTMIN+2  37) SIGRTMIN+3

38) SIGRTMIN+4  39) SIGRTMIN+5  40) SIGRTMIN+6  41) SIGRTMIN+7  42) SIGRTMIN+8

43) SIGRTMIN+9  44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13

48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12

53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9  56) SIGRTMAX-8  57) SIGRTMAX-7

58) SIGRTMAX-6  59) SIGRTMAX-5  60) SIGRTMAX-4  61) SIGRTMAX-3  62) SIGRTMAX-2

63) SIGRTMAX-1  64) SIGRTMAX


kill -STOP pid

kill -19 pid



gdb program_name `pidof program_name`




kill -CONT pid

kill -18 pid





kill -STOP `pidof RFTS`

gdb RFTS `pidof RFTS`

$ generate-core-file

kill -CONT `pidof RFTS`



gdb 에서 stl 컨테이너 데이터 보기
http://www.yolinux.com/TUTORIALS/GDB-Commands.html

gdb print option  설정
https://developer.apple.com/documentation/DeveloperTools/gdb/gdb/gdb_9.html



http://www.winapi.co.kr/clec/cpp2/15-1-2.htm


===> const 키워드 바로 다음 대상이 상수가 되는데 타입 앞에 있으면 대상체가 상수가 되며 변수명 앞에 있으면 변수만 상수가 된다.

상수 지시 포인터(Pointer to Constant)

const int *pi2=&ar[0];
pi2++;                // 포인터가 다른 대상체를 가리킬 수 있다.
*pi2=0;              // 에러 : 대상체가 상수이므로 변경할 수 없다.

==> 포인터 변수로 선언되었으므로 이 포인터가 가리키는 대상체는 정수형 상수
==> 지시하는 포인터는 바꿀수 있지만, 지시하고 있는 대상은 바꿀수 없다.
지시 하는 곳이 상수 이다.( 가리키는 대상이 상수 )

==> int const *는 const int *와 같은 표현이며 대상체가 상수인데 const의 위치가 직관적이지 않아서 잘 사용되지 않는다.

상수 포인터(Constant Pointer)

int * const pi3=&ar[0];
pi3++;                // 에러 : 포인터가 다른 대상체를 가리킬 수 없다.
*pi3=0;                   // 대상체는 변경할 수 있다.

==> pi3 포인터 변수를 상수로 만든다
==> 가리키는 대상은 바꾸수 있지만 , 지시하는 포인터는 바꿀수 없다.











http://sthbeyond.tistory.com/5

해당 멤버 함수 안에서는 멤버 변수값을 수정 할수 없다.


int* InvalidConstFunction() const
  {
    // 멤버 변경이므로 compile error
//    m_Member = 0 ;

    // const 한정자가 붙지 않은 멤버 함수 호출이므로 compile error
// 다른곳으로 호출 되어서 멤버변수를 변경할수 있으므로,
  //  ThisMemberFunctionIsNotConst() ;

    // 인자타입에서 포인터가 가리키는 객체에 붙어 있지 않으므로 멤버 변경 가능성 있음 compile error
  //  ThisFuctionChangeParam( &m_Member ) ;

   // return &m_Member ;  // 멤버 포인터를 외부로 노출( 멤버 변경 가능성 있음 ) compile error
    return NULL;
  }

+ Recent posts