Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 파일시스템과파티션 #포렌식 #사이버포렌식 #Encase #Forensic #파티션 #파일시스템 #정보보안
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #로또번호생성 #로또번호만들기 #중복제거 #중복제거알고리즘
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #BrokenAuthentication
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터의포인터 #c언어2중포인터
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #robots.txt #검색엔진노출
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #선택정렬 #선택정렬알고리즘
- #FAT파일시스템 #파일시스템구조 #파일시스템 #Forensic #정보보안 #IT
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #SQLi #TimeBaseSQLi #sqlinjection
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터배열 #c언어포인터 #포인터 #c포인터
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c배열포인터 #c언어포인터 #c언어배열포인터 #배열포인터
- 포렌식 #사이버포렌식 #Forensic #정보보안 #IT
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터 #c언어포인터연산
- XSS #ReflectedXSS
- C언어 #C #C프로그래밍 #프로그래밍 #언어
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c언어포인터와문자열 #c언어문자열
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #c2차원배열동적할당 #c언어동적할당 #c동적할당 #c언어동적할당2차원배열
- c언어malloc #동적할당 #c언어동적할당 #c언어malloc사용하기
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #phpcodeinjection #injection
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #Call by value #Call by reference
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #commandinjection
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #CSRF #
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #IT #PUT메소드 #PUT #HTTP메소드 #취약점
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #SQLi #sqlinjectioon
- c언어문자열처리방법 #c언어문자열
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #C동적메모리할당 #malloc #메모리
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #bruteFource #무차별공격
- 사이버포렌식 #포렌식 #FAT
- C언어 #C #C프로그래밍 #프로그래밍 #언어 #포인터 #포인터변수 #c언어주소 #주소
- beebox #bWAPP #webhacking #web #웹해킹 #정보보안 #xss #storedxss #CrossSiteScripting
Archives
- Today
- Total
Hello Security World
C언어 [C언어 포인터 배열] 본문
C언어 포인터 배열
C언어에서 배열을 구성하는 배열 요소의 데이터 타입에 대한 제한은 없으며 배열도 배열 요소로 사용할수 있다.
'포인터 배열' 은 포인터가 배열 요소인 배열을 의미하며 포인터도 배열 요소로 처리할수 있다.
여러 개의 포인터로 구성된 포인터 배열은 서로 다른 길이의 문자열을 배열 형태로 처리하고자 할 때 주로 사용된다.
포인터 배열을 사용하는 형식은 다음과같다.
데이터 타입 * 배열이름[배열의크기] 예) char* str[2] {"hello","string"};
1 2 | 데이터 타입 * 배열이름[배열의크기] 예) char* str[2] {"hello","string"}; |
즉, 포인터 배열은 '다수의 주소를 저장하기 위한 공간' 이다. 여태까지는 *p = &a; 라고 했다면 하나의 주소를 저장한 셈인데
*p [3] = {&a,&b,&c}; 처럼 3가지 의 주소를 저장하려면 포인터 배열을 사용해야 한다.
포인터 배열 예제)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | #include <stdio.h> //포인터 배열 사용 예제 int main() { int a=1; int b=2; int c=3; //포인터 배열 '정수' 처리 int* arr[3]={&a,&b,&c}; // 정수형 포인터 배열 선언 후 각 a,b,c의 주소 저장 printf("%d\n",*arr[0]); // 역참조 연산자 사용 '주소가 가르키고 있는 값' 출력 printf("%d\n",*arr[1]); printf("%d\n",*arr[2]); char str1='a'; char str2='b'; char str3='c'; //포인터 배열 '문자' 처리 char* arr2[3]={&str1,&str2,&str3}; //캐릭터형 포인터 배열 선언 후 각 str 변수 저장 printf("%c\n",*arr2[0]); //역참조 연산자 사용 '주소가 가르키고 있는 값' 출력 printf("%c\n",*arr2[1]); printf("%c\n",*arr2[2]); //포인터 배열 '문자열' 처리 char* arr3[3]={"hi","hello","bye"}; //캐릭터형 포인터 배열 선언 후 문자열 저장 printf("%s\n",arr3[0]); //역참조 연산자 사용 '주소가 가르키고 있는 값' 출력 printf("%s\n",arr3[1]); printf("%s\n",arr3[2]); } 실행결과 1 2 3 a b c hi hello bye |
위의 코드와 주석 , 실행결과를 보면서 이해하면 쉽게 이해할수 있을것이다. 포인터 배열,배열 포인터 .. 말이 어렵지 포인터 개념만
확실하게 넘어가면 이것 또한 조금은 이해할수 있다.
포인터 배열이 주로 사용되는곳은 '서로 다른 길이의 문자열을 배열 형태로 처리할때' 사용된다.
'프로그래밍 > C' 카테고리의 다른 글
C언어 [C언어 포인터의 포인터] (0) | 2020.05.03 |
---|---|
C언어 [C언어 배열 포인터] (0) | 2020.05.03 |
C언어 [C언어 문자열 처리 방법] (0) | 2020.05.03 |
C언어 [C언어 포인터의 연산] (0) | 2020.05.03 |
C언어 [C언어 주소와 & 포인터] (0) | 2020.05.03 |