[C언어] 문자와 문자열

yunssup·2023년 6월 10일

C언어

목록 보기
11/13
post-thumbnail

1.문자열이란? :

문자들이 여러 개 모인 것

2.NULL 문자 :

문자열의 끝, 문자열은 어디서 종료되는지 알 수 없기 때문에 표시해야 한다.

예제)

#include <stdio.h>
int main(void)
{
	int i;
	char str[4]; //배열의 길이
	str[0] = 'a';
	str[1] = 'b';
	str[2] = 'c';
	str[3] = '\0'; //NULL 문자
	i = 0;
	while (str[i] != '\0') {
		printf("%c", str[i]); //printf("%s",str);
		i++;
	}
	return 0;
}

예시)배열에 문자열 저장하고 출력하기

#include <stdio.h>
int main(void) {
	char data[6] = { 'h','a','p','p','y',0 };//0은 NULL문자
	char ment[] = "푸히히~~";//[]내부 숫자 생략 가능
	printf("%s\n", data); //문자열은 %s 사용
	printf("%s", ment);
}

3. 저장된 문자열의 길이 구하기

: 배열에 저장된 문자열의 길이를 알기 위해서는 문자열의 끝을 찾는 코드 필요

예시) 배열에 저장된 문자열의 길이를 구하는 함수 만들기-1

#include <stdio.h>
int GetstringLength(char data[])
{
	int count = 0;
	while (data[count]!=0) count++; //0이 나올때가지 문자열의 개수를 더함
	return count;
}
void main() {
	int data_length;//문자열 길이 저장 변수
	char data[] = "happy";
	data_length = GetstringLength(data);
	printf("data_length=%d\n", data_length);
}

예시) 배열에 저장된 문자열의 길이를 구하는 함수 만들기-2

#include <stdio.h>
int main(void)
{
	int i=0;
	char str[30] = "C language is easy"; //배열의 길이
	while (str[i] != 0)
		i++;
	printf("문자열 %s의 길이는 % d입니다.", str, i);
	return 0;
}

4. 문자열 복사

char dst[6];
char src[6]="HEllo"'
strcpy(dst,src); // src를 dst로 복사

5. 문자열 연결

char dst[12]="Hello";
char src[6]="World"'
strcat(dst,src); // dst가 "HelloWorld"```

0개의 댓글