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 | 29 | 30 |
| 31 |
Tags
- 게임프로그래밍
- 구조체
- 재귀함수
- permutation
- 코딩
- 미라클모닝
- 얌얌코딩
- 오늘의에러
- 프로그래밍
- 구조체포인터
- 자료구조
- 내가해냄
- 게임개발
- 코딩테스트
- UE5
- 개발자
- 백준
- dfs
- 언리얼로그
- unreal
- 커스텀로그
- 연산자오버로딩
- 언리얼
- 링크드리스트
- 탐색기법
- fstring
- c++자료구조
- C++
- 개발
- TPS
Archives
- Today
- Total
All is well
[YYBASIC0205/얌얌코딩] cstring 라이브러리 본문
재귀 호출과 트리 구조의 관계
- 재귀 호출은 함수가 자신을 호출하면서 트리 구조를 형성합니다.
- 배열에서 데이터를 찾는 방법은 O(n)의 시간 복잡도를 가지며, 최악의 경우 배열 크기 n에 비례하는 탐색 횟수가 필요합니다.
- 반면 트리 구조를 사용하면 데이터 탐색이 보다 효율적이며, 특정 데이터를 찾기 위해 루트 노드부터 비교가 이루어집니다.
- 트리 탐색은 현존하는 알고리즘 중에서 가장 빠른 편이며, 데이터 수가 증가할수록 탐색 시간이 급격히 줄어듭니다
cstring 라이브러러
`strcmp( A, B )`
: 두 문자열 A, B가 같은지 비교합니다. 같으면 0, 다르면 -1을 반환합니다.
`strlen( A )`
: 문자열 A의 길이를 반환합니다.
`strcpy_s( Destination, Source )`
: 문자열 Destination에 문자열 Source의 내용을 복사하여 붙여넣습니다.
// YYBASIC02_05
#include <iostream>
using namespace std;
void main()
{
/* cstring */
char nameA[10] = "ABC";
char nameB[10] = "ABC";
// 문자열 비교 - 기존 방법
cout << "< not using cstring >\n";
#pragma region Comparing Strings with a For loop
int flag = 0;
for (size_t i = 0; i < 10; i++)
{
if (nameA[i] != nameB[i])
{
flag = 1;
break;
}
}
if(flag == 0)
cout << "nameA and nameB is SAME.\n";
else
cout << "nameA and nameB is DIFFERENT.\n";
#pragma endregion
// 문자열 비교 - strcmp( A, B ) : 두 문자열 A, B가 같으면 0 반환
cout << "\n< using cstring >\n";
#pragma region Comparing Strings with strcmp(A, B)
if( strcmp(nameA, nameB) == 0 )
cout << "nameA and nameB is SAME.\n";
else
cout << strcmp(nameA, nameB) << " : nameA and nameB is DIFFERENT.\n";
#pragma endregion
// 문자열 길이 - strlen( A )
#pragma region length of String
int len = strlen(nameA);
cout << "\nlength of nameA : " << len << "\n\n";
#pragma endregion
// 문자열 복사 - strcpy_s( 붙여넣을 곳, 복사할 것 )
#pragma region Copy String
char nameC[10];
strcpy_s(nameC, nameA);
cout << "nameC : " << nameC << "\n";
#pragma endregion
}
'C++ > YYBASIC' 카테고리의 다른 글
| [YYBASIC0207/얌얌코딩] 재귀함수 예제 생각해보기 (2) | 2025.02.07 |
|---|---|
| [YYBASIC0206/얌얌코딩] 재귀함수의 깊이와 너비 (1) | 2025.02.06 |
| [YYBASIC0204/얌얌코딩] 재귀 함수에 대한 착각과 진실 (0) | 2025.02.05 |
| [YYBASIC0203/얌얌코딩] Direct 기법, 2중 포인터, 2차원 배열 (5) | 2025.02.05 |
| [YYBASIC0202/얌얌코딩] DAT(Direct Addressing Table) - Hash Table (0) | 2025.02.04 |