2019. 1. 2. 22:57 C,C++ 코드
간단한 iterator 적용 문제
#include <iostream>
#include <iterator>
#include <algorithm>
#include <string>
#include <cctype>
using namespace std;
template<typename T, size_t size>
void printarr(T (&a)[size]){
cout<<"배열 내용 역순 출력\n";
copy(rbegin(a), rend(a), ostream_iterator<T>(cout, "\n"));
cout<<"출력 끝\n";
}
int main() {
// your code goes here
string job[]={"wArrior","magIcian","arcHEr"};
printarr(job);
transform( begin(job), end(job), ostream_iterator<string>(cout, "\n"),
[](string s){/*transform(begin(s), end(s), begin(s),toupper);*/
for(auto& x : s)if(islower(x)) x='*';
return s;} );
printarr(job);
transform( begin(job), end(job), ostream_iterator<string>(cout, "\n"),
[](string s){transform(begin(s), end(s), begin(s),[](char x)->char{return toupper(x);});
return s;} );
//toupper의 반환형이 int이므로 char로 바꾸기 위해 람다함수 이용
printarr(job);
return 0;
}
'C,C++ 코드' 카테고리의 다른 글
일반템 스타포스 시뮬 (0) | 2018.12.29 |
---|---|
single linked list (0) | 2018.12.25 |
하노이 탑 코드 (0) | 2018.12.23 |
인라인 코드 테스트 (2) | 2018.12.22 |
진자 운동 코드 (0) | 2018.12.22 |