카테고리

asm (27) bootloader_x86_grub (1) C (92) compile (11) config (76) CPP (13) CSS (1) debugging (7) gimp (1) Go (1) html (1) Java (1) JavaScript (1) kernel (19) LibreOffice (3) Linux system progamming (21) MFC (1) opencv (4) OpenGL (1) PHP (1) Python (4) qemu (29) shell (3) socket (7) troubleshooting (2) ubuntu18.04 (2) windows (1)

2018/12/14

초급자 메모리 포인터 선언 실수 원인


#include <stdio.h>

int main(void){
int *pointer_value, value;
메모리 번지
메모리 자료형 int(32bit)
변수 이름
설명
0x5000
메모리 공간 할당 *
point_value;
변수 선언
0x5200
메모리 공간 할당
value
변수 선언

*pointer_value=value;
메모리 번지
메모리 자료형 int(32bit)
변수 이름
설명
0x5000
메모리 공간 할당 *
point_value;
주소(R) 변수 선언
0x5000
INT 주소 자료 형식
주소 값
주소(R) 값 모드 대기
0x5200
메모리 공간 할당
value
(RW)변수 선언
0x5200
INT 주소 자료 형식
변수 값
정수 값(W) 모드 실행
메모리 번지
자료형 NO
형식 다름
실패

*pointer_value=&value;
메모리 번지
메모리 자료형 int(32bit)
변수 이름
설명
0x5000
메모리 공간 할당 *
point_value;
주소(R) 변수 선언
0x5000
INT 주소 자료 형식
주소 값
주소 값(R) 모드 대기
0x5200
메모리 공간 할당 &
value
주소(RW) 참고 변수 선언
0x5200
INT 주소 자료 형식
추소 참고 변수 값
참고 (W) 모드 실행
메모리 번지
자료형 NO
형식 다름
실패

*pointer_value=value;
메모리 번지
메모리 자료형 int(32bit)
변수 이름
설명
0x5000
메모리 공간 할당 *
point_value;
주소(R) 변수 선언
0x5000
INT 주소 자료 형식
주소 값
주소 값(R) 모드 대기
0x5200
메모리 공간 할당
value
(RW) 변수 선언
0x5200
INT 주소 자료 형식
주소 값
참고 (RW) 모드 실행
메모리 번지
자료형 KO
형식 다름
성공

pointer_value=&value;
메모리 번지
메모리 자료형 int(32bit)
변수 이름
설명
0x5000
메모리 공간 할당
point_value;
주소(RW) 변수 선언
0x5000
INT 주소 자료 형식
주소 값
주소 값(RW) 모드 대기
0x5200
메모리 공간 할당 &
value
(RW) 변수 선언
0x5200
INT 주소 자료 형식
주소 값
참고 (RW) 모드 실행
메모리 번지
자료형 KO
형식 다름
성공
}

댓글 없음:

댓글 쓰기