C++26 iterator 반복자 iterate 반복하다 iterator 반복자 반복자란 반복하는 다음 데이터를 가리키는 배열의 일종이다. 배열이고 가리키니 포인터로서의 성질도 있다 반복자란 기능적으로 배열의 부분집합에 해당된다 배열처럼 연속되는 데이터를 다룰때 반복해서 넘어가서 가리키는 배열의 그 기능만 가져온 것이다 왜 기능도 더 많은 배열을 쓰지 반복자를 따로 쓸까? 배열로 쉬운 일이 있고, 반복자를 써야 메모리의 소모를 줄일 수 있기 때문이다 1. 배열을 사용하여 작업시, 작업에 필요한 모든 데이터들을 데이터를 올려놓고 사용해야만 하기 메모리의 소모가 크지만 반복자를 사용할때는 현재 사용하는 데이터 하나만 메모리에 올려서 사용하면 되기 때문에 메모리 사용을 줄일 수 있다 2. 배열의 경우, 배열에서 값을 가져올 시 인덱스만 알면 .. 2022. 6. 8. [c++] 문자열 제어 reverse, substr, find reverse : 문자열의 처음과 끝을 좌우반전하여 거꾸로 바꾸는 함수 아래에서 gom.end() 대신에 gom.begin() + 3 을 넣을경우 문자열의 끝이 아닌 3번째 문자까지만 바꾼다 substr(n,m) : 문자열의 일부를 추출하는 함수. 문자열의 n 번째 인덱스를 시작으로 m개의 문자열을 추출한다 find("문자열 검색어") : 문자열에서 문자열을 검색할때 사용하는 함수. 있다면 위치를 반복자(포인터 비슷)로 가져온다 #include using namespace std; string gom = "akuma is you"; int main(){ cout 2022. 6. 7. [c++] getline, precision, fixed getline : cin을 사용해서 개행문자를 만나기 전까지의 모든 문자들을 가져와 문자열 타입의 변수로 저장하는 함수 이전 버퍼에 개행문자가 남아 있다면, 이전 입력 버퍼들을 cin.ignore() 를 통해 지워야 정상 작동한다 #include // 이 안에 string 타입도 내장되어 있다 using namespace std; string tok; int main(){ getline(cin, tok); // cin을 사용하여 입력받고 그 값을 문자열 변수 tok 에 저장한다 return 0; } precision : 정밀도라는 뜻. cout의 출력에서 실수의 정밀도를 나타내기위해 사용되는 함수 사용시, 가장 큰 자리 수부터 괄호 안의 숫자만큼 출력한다. 실수의 정수 부분을 고정하는 cout 2022. 6. 7. [c++] 문자열 입력이 끝날 때까지 입력 받기 문자열을 더이상 안받을때까지 입력을 계속 받는 코드는 아래 두 개 모두 사용가능하다 while (scanf("%d", &n) != EOF) // EOF : End Of File , 파일의 끝을 말한다. 즉, '파일의 끝까지 스캔한것이 아니라면' 과 같은 말이다 while (cin >> n) // 위의 scanf 보다 훨씬 간단하게 사용가능하다! 2022. 6. 7. 이전 1 ··· 3 4 5 6 7 다음