#include<iostream>
#include<string>
using namespace std;
int main() {
    string s1("hello,world!!!");  //测试了下不能为中文,暂未找到原因
    decltype(s1.size()) x1 = 0;   //使用decltype返回s.size的数据类型,x1的类型就是返回的数据类型,且初始化x1为0
    //这里尝试使用auto来让编译器决定x1的数据类型,测试可用  (.size返回变量包含的字符个数.)
    for (auto c:s1)   //使用auto让编译器来决定变量c的数据类型
        if (ispunct(c)) //如果c是标点符号
            ++x1;
    cout << s1 << "的标点符号有: " << x1 << "个" << endl;

    return 0;
}
#include<iostream>
#include<string>
using namespace std;
int main() {
    string s1("hello,world!!!");  
    for (auto &c:s1) //遍历s1,使用的是引用c,而且这里的c必须初始化类型,这里用的auto,转换后等于是char
        c=toupper(c);   //for循环每次遍历都将把自己的值得替换为大写(toupper),间接改变了s1为大写
    cout << s1  << endl;

    return 0;
}
最后修改:2022 年 12 月 05 日
如果觉得我的文章对你有用,请随意赞赏