---恢复内容开始---

1.使用Lambda表达式计算“hello world!”中字母e和i的数量

下面是代码:

 1 #include "stdafx.h"
 2 #include<algorithm>
 3 #include"iostream"
 4 using namespace std;
 5 
 6 
 7 
 8 int main(int argc, _TCHAR* argv[])
 9 {
10     char s[100]="hello world!";
11     int E=0;
12     int L=0;
13     for_each(s,s+strlen(s),[&](char c)
14     {
15         if (c=='e' || c=='E')
16             E++;
17         if (c=='l' || c=='L')
18             L++;
19     });
20     cout<<E<<endl;
21     cout<<L<<endl;
22     system("pause");
23     return 0;
24 }

下面是运行结果:

 2.使用智能指针进行字符串“hello world”的右移位。

 1 #include "stdafx.h"
 2 #include<algorithm>
 3 #include"iostream"
 4 #include<memory>
 5 using namespace std;
 6 
 7 
 8 
 9 int main(int argc, _TCHAR* argv[])
10 {
11     
12     char s[100]="hello world!";
13     int len=strlen(s);
14     int i=0;
15     int n=0;
16     cin>>n;
17     unique_ptr<char[]> ts(new char[len + 1]);
18     while(i<len)
19     {
20         ts[(i+n)%len]=s[i];
21         i++;
22     }
23     ts[len]='\0';
24     printf("%s",ts);
25     system("pause");
26     return 0;
27 }

运行结果: