CS/C언어(2)
-
[C언어] 포인터의 연산과 인수 전달 방법
포인터의 연산포인터끼리의 연산https://cascade.tistory.com/67 C언어에서 포인터(pointer)의 개념C언어에서 포인터란, 메모리의 주소 값을 저장하는 변수이다. 포인터는 아래와 같이 선언한다. int n = 150; int *p = &n; 정수 값 150은 n이라는 변수 안에 저장되며, 이는 메모리 상에 어떤 공간에 할당cascade.tistory.com앞선 포스팅에서 정의한 포인터를 살펴 보자.int n = 150; int *p = &n; 여기서의 포인터 변수 p는 어떻게 연산할까? 포인터도 정수로 표현이 가능하므로 int 자료형처럼 더하기, 빼기, 곱하기, 나누기 연산이 가능할까? 두 정수 m, n을 선언하고 아래 코드를 실행해 보자.#include int main() { in..
2024.03.29 -
C언어에서 포인터(pointer)의 개념
C언어에서 포인터란, 메모리의 주소 값을 저장하는 변수이다. 포인터는 아래와 같이 선언한다. int n = 150; int *p = &n; 정수 값 150은 n이라는 변수 안에 저장되며, 이는 메모리 상에 어떤 공간에 할당된다. 150의 값을 가지는 n이 어떻게 메모리에 할당되는지 알아보자. 컴퓨터의 메모리 구조 컴퓨터에서 int 자료형이 저장될 때는 메모리 상에서 아래와 같이 저장된다. 메모리 주소 당 8자리 이진수가 들어가고, 이를 바이트(byte)라고 한다. 이때 이진수 하나를 비트(bit)라고 한다. 즉 8비트 = 1바이트 이다. 일반적인 컴퓨터에서 int를 저장할 때, 총 4바이트의 공간을 차지한다. 즉 0x51이라는 메모리 주소에 정수를 저장하고 싶다면 0x51~0x54의 4칸을 차지하는 것이..
2024.03.28