핑크빛 세상

고정 헤더 영역

글 제목

메뉴 레이어

핑크빛 세상

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기
    • 코딩
    • 일본가수
    • 애니메이션 노래(ost)
    • 추억의 게임 ost
    • 애니메이션 음악,피아노,재즈
    • 건강

검색 레이어

핑크빛 세상

검색 영역

컨텐츠 검색

코딩

  • c언어 동적 메모리 -3일차 첫 번째

    2022.12.07 by Davinc2

  • c언어 스택 -3일차

    2022.12.07 by Davinc2

  • c언어 메모리할당 메모 -3일차..첫 번째

    2022.12.07 by Davinc2

  • c언어 메모,정리 배열,포인터 -3일차 세 번째

    2022.12.07 by Davinc2

  • c언어 메모,정리 배열,포인터 -3일차 두번째

    2022.12.07 by Davinc2

  • c언어 메모, 정리 배열, 포인터-3일차 첫번째

    2022.12.07 by Davinc2

  • 2일차 포인터 변수~c언어

    2022.12.06 by Davinc2

  • 2일차 c언어 typedef~

    2022.12.06 by Davinc2

c언어 동적 메모리 -3일차 첫 번째

정적 메모리 할당의 한계 함수를 호출할 때 지역 변수가 할당되는 메모리 공간은 최대 1Mbyte를 넘을 수 없습니다. 컴파일러는 자신이 컴파일한 프로그램이 스택을 얼마나 사용할지 예상할 수 없습니다. 더 큰 메모리를 사용할 수 있는 방법이 필요합니다. 동적 메모리 할당 프로세스는 더 큰 메모리를 할당해서 사용할 수 있도록 힙이라는 공간을 제공한다 스택은 '스택 프레임'규칙을 통해 코드가 컴파일될 때 사용할 메모리 크기를 결정합니다. 하지만 힙은 스택 프레임과 같은 형식이 적용되지 않으며 프로그래머가 원하는 시점에 원하는 크기만큼 메모리를 할당할 수 있다. 그리고 메모리 사용이 끝나면 언제든지 할당한 메모리 공간을 해제할 수 있습니다. 이것을 '동적 메모리 할당'이라고 합니다. Gbyte까지 할당 가능하다..

코딩 2022. 12. 7. 20:44

c언어 스택 -3일차

스택은 자료구조의 한 종류 자료구조란 프로그램에서 사용할 데이터를 효율적으로 관리하기 위한 이론 스택에 데이터를 추가하면 push 제거하면 pop 이라고 한다. 어셈블리어 인가봅니다. 지역 변수 관련 push 자료구조 이론- 스택 포인터 주소 증가, 실제 컴퓨터- 스택 포인터 주소 감소 로 받아들인다. pop 자료구조 이론- 스택 포인터 주소 감소, 실제 컴퓨터- 스택 포인터 주소 증가 로 받아들인다. void Test() { int a,b,c; } Test함수가 시작되는 시점에 a,b,c 변수를 저장할 메모리 공간을 스택 영역에 확보해야 하므로 컴파일러는 변수를 위한 메모리 공간을 확보하기 위해 ax레지스터를 세 번 push하는 코드를 기계어로 만듭니다. int a,b,c -------> push ax..

코딩 2022. 12. 7. 18:16

c언어 메모리할당 메모 -3일차..첫 번째

코드 세그먼트: 컴파일러는 c언어 소스를 기계어로 된 명령문으로 번역해서 실행 파일을 만든다. 실행 파일이 실행되어 프로세스가 만들어지면 이 기계어 명령들은 프로세스의 '코드 세그먼트'에 복사되어 프로그램 실행에 사용된다. 데이터 세그먼트: 프로그램이 시작해서 끝날 떄까지 계속 사용되는 데이터는 '데이터 세그먼트'에 보관된다. 이 영역에 있는 데이터는 컴파일할 때 정해지며 c언어에서 사용한 문자열 상수나 전역 변수,static변수가 이 영역을 사용 스택 세그먼트: 스택 세그먼트는 프로그램 실행 중에 필요한 임시 데이터를 저장하는 데 사용하는 메모리 영역 함수가 호출될 떄 함수 안에 선언한 지역 변수가 이 영역에 할당된다. 지역 변수가 놓이는 스택과 동적으로 할당되는 메모리 공간인 힙으로 나뉜다 메모리 할..

코딩 2022. 12. 7. 17:26

c언어 메모,정리 배열,포인터 -3일차 세 번째

hi.. 배열과 포인터 char *형 포인터 변수가 3개 -> char *p1, *p2, *p3; 이렇게 선언 만약 포인터가 100개 필요하면 너무 불편. 그래서 포인터 변수도 배열로 선언가능 char *p[5]; //char *p1, *p2, *p3, *p4, *p5 와 같다. 크기는 20바이트. char data1, data2, data3, data4, data5, i; char *p[5] = {&data1, &data2, &data3. &data4, &data5}; //p[0] 는 data1주소 p[1] 는 data2주소 ....p[4]는data5주소 for(i = 0; i < 5; i++) *p[i] = 0; // data1 ~data5에 모두 0 저장. 포인터 기준 배열 char *(p[5]);..

코딩 2022. 12. 7. 15:08

c언어 메모,정리 배열,포인터 -3일차 두번째

헬로우 월드; 책을 보고 제가 이해한걸 토대로 작성하기 때문에 틀린 점 발견 시 지적하셔도 됩니당. 책 보고도 틀리면 노답이긴한데 ㅋㅋㅋ;; 포인터로 배열주소 저장하여 사용하기 배열은 사용할 메모리 그룹의 시작 위치를 기준으로 색인 작업된 요소의 위치를 계산하여 사용 char형으로 선언한 data 배열의 3번째 요소 (data[2])를 sum변수에 10번 더하는 코드 char data[5] {1,2,3,4,5}; int i, sum = 0, select = 2; //sum 변수에 data[select]값을 10번 더함,datap[2]요소 값을 10번 더하는 것과 같음. for(i = 0; i < 10; i++) sum = sum + data[select]; //data[select]는 select가 2이..

코딩 2022. 12. 7. 14:22

c언어 메모, 정리 배열, 포인터-3일차 첫번째

배열은 []연산자를 사용하여 표현 포인터는 *연산자를 사용하여 표현 포인터는 포인터 변수가 가리키는 메모리의 시작 주소를 기준으로 삼음 배열도 해당 배열이 사용하는 메모리 그룹의 시작 주소를 기준으로 삼는다. *(data+1) = 5; == data[1]=5; 둘이 같다 배열 표기법의 한계 data[2]가 포인터 표기에 비해 좀 더 간단해 보이지만 간단해보인다는 뜻은 표현에 제약이 있다는 뜻이다. int data[2] = {0x123456789,0x123456789}; data라는 1차원 배열 선언 0x78 0x56 0x34 0x12 0x78 0x56 0x34 0x12 0x78 0x56 0x34 0x12 data[0] data[1] 위와 같이 선언한 data배열에서 data[0] 요소는 총 4바이트로 구..

코딩 2022. 12. 7. 14:00

2일차 포인터 변수~c언어

c의변수임-다른 객체를 참조하기 위해서 사용한다. 구체적으로 컴퓨터 메모리에 있는 자료값이나 변수 혹은 함수의 주소를 가지는 변수 변수의 크기에 따라서 차지하는 메모리 공간이 달라짐. 예를 들어 도서관에 수십만권의 책이 있고 여러분이 이 중에서 내가 원하는 책을 찾고자 한다. 여러분이 찾고자 하는 책의 위치를 저장하고 있는 인덱스를 먼저 접근해서 찾은 다음 실제 책이 있는 곳에가서 책을 찾으면 효율적이다 책이 있는 곳을 참조하는 것 변수의 크기에 따라서 메모리 공간이 달라짐. sizeof 연산자로 컴파일러가 컴파일할 떄의 변수형 크기를 알 수 있다. #include int main(void) { int i; char ch; short shrt; float flt; double dbl; printf("in..

코딩 2022. 12. 6. 18:50

2일차 c언어 typedef~

typedef의 이용 새로운 자료형을 정의하는 역할 c의 기본자료형을 확장시키는 중요한 역할 특히 구조체 변수 선언시에 편리 typedef unsigned BYTE; BYTE idx; //unsigned int index와 같음 typedef int INT32; typedef unsigned int UINT32; INT32 i; // int i;와 같다. UINT32 k; // unsigned int k;와 같다. 새로운 자료형을 정의하여 c의 자료형을 확장시키는 역할을 함 c코드의 이식성을 높여준다. 코드를 하드웨어에 독립적으로 만드는데 도움이 된다.

코딩 2022. 12. 6. 18:19

추가 정보

인기글

최신글

페이징

이전
1 2
다음
TISTORY
핑크빛 세상 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바