Notice
Recent Posts
Recent Comments
Link
오븐 노트
[C++] 연습 문제 (문자열) #1 ~ 2 본문
코딩 테스트 출제 가능성
#include <iostream>
using namespace std;
// 문제1) 문자열 길이를 출력하는 함수
int StrLen(const char* str)
{
// str라는 문자열의 길이를 반환
int count = 0;
while (str[count] != '\0')
count++;
return count;
}
// 문제2) 문자열 복사 함수
char* StrCpy(char* dest, char* src)
{
// #1 배열 형식
int count = 0;
while (src[count])
{
dest[count] = src[count];
count++;
}
dest[count] = '\0';
return dest;
// #2 포인터 형식
//char* ret = dest;
//while (*src)
//{
// *dest++ = *src++;
// //*dest = *src;
// //dest++;
// //src++;
//}
//*dest = '\0';
//return ret;
}
// 문제3) 문자열 덧붙이는 함수
char* StrCat(char* dest, char* src)
{
// #1 배열 형식
int len = StrLen(dest);
int i = 0;
while (src[i])
{
dest[len + i] = src[i];
i++;
}
dest[len + i] = '\0';
return dest;
// #2 포인터 형식
//char* ret = dest;
//while (*dest)
// dest++;
//while (*src)
// *dest++ = *src++;
//*dest = '\0';
//return ret;
}
// 문제4) 두 문자열을 비교하는 함수
int StrCmp(char* a, char* b)
{
int i = 0;
while (a[i] || b[i])
{
if (a[i] > b[i])
return 1;
if (a[i] < b[i])
return -1;
i++;
}
return 0;
}
// 문제5) 문자열을 뒤집는 함수
void ReverseStr(char* str)
{
int len = StrLen(str);
for (int i = 0; i < len / 2; i++)
{
int temp = str[i];
str[i] = str[len - 1 - i];
str[len - 1 - i] = temp;
}
}
#pragma warning(disable: 4996)
int main()
{
const int BUF_SIZE = 100;
char a[BUF_SIZE] = "Hello";
char b[BUF_SIZE];
char c[BUF_SIZE] = "World";
char d[BUF_SIZE] = "Hella";
//int len = StrLen(a);
//StrCpy(b, a);
//StrCat(a, c);
//int value = StrCmp(a, d);
ReverseStr(a);
cout << a << endl;
return 0;
}
[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문 - 인프런 | 강의
C++ 카테고리의 글은 인프런 Rookiss님의 강의를 공부하며 정리하는 내용입니다.
이미 알고 있는 내용도 다시 정리 되어있을 수 있습니다.
모든 글은 제가 공부하기 위해 작성합니다.
'Develop > C++' 카테고리의 다른 글
[C++] 파일 분할 관리 (0) | 2022.08.29 |
---|---|
[C++] 연습문제 (달팽이) (0) | 2022.08.22 |
[C++] TextRPG #3 (0) | 2022.08.13 |
[C++] 포인터 마무리 (0) | 2022.07.15 |
[C++] 다차원 배열 (0) | 2022.07.15 |