포인터 문제 c로 분석

2024. 1. 1. 02:07정보처리,전산/자료구조

반응형
#include <stdio.h>
 
int main(){

    char a[] = "Art";
    char* p = NULL;
    p = a;
 
    printf("%s\n", a);
    printf("%c\n", *p);
    printf("%c\n", *a);
    printf("%s\n", p);
 
    for(int i = 0; a[i] != '\0'; i++)
    printf("%c", a[i]);

 

char a[] = "Art";에서 a는 문자 배열이며, "A", "r", "t", 널 종료 문자('\0')로 구성되어 있다.

char* p = NULL;에서 포인터 p를 선언하고 초기화한다.. 여기서 초기화를 NULL로 하는 이유는 명시적으로 초기화해주지 않으면 포인터가 어떤 주소를 가리키는지 알 수 없기 때문이다.

 

p=a에서 p는 a배열의 첫 번째 요소를 가리킨다. A

 

 

 

%s는 배열과 포인터를 사용하여 null에서 부터 \0을 만날 때까지 문자열을 출력하는 데 사용한다. print("%s\n,p)는  p가 가리키는 문자열을 출력한다.

 

 

출력

Art

A

A

Art

Art

 

반응형

'정보처리,전산 > 자료구조' 카테고리의 다른 글

삽입 정렬 insertion Sort  (0) 2024.07.22
ArrayList LinkedList  (0) 2024.04.26
16진수 8진수  (0) 2024.03.29
이진탐색 binary search  (0) 2024.03.15
정적변수 static. Java코드로 분석  (1) 2023.12.31