字符串相关:

  1. string str =" "; 定义一个字符串
  2. cin>>str; 输入字符串,遇到空格就停止
  3. getline(cin,str) 输入字符串,遇到空格不会停止
  4. int len=str.size() / str.length() 获取字符串的长度
  5. str[i] 使用下标方式取得字符串的每一位,字符串的每一位 就是一个字符char类型,这里的i是下标,从0开始

字符串处理的一些主要常用函数包括:

  1. ​length()/size()​: 返回字符串长度。 用法:str.size()
  2. ​substr(): 提取子字符串。 用法:str.substr(起始位置, 长度)
  3. ​find()​: 查找子串首次出现的位置。 用法:str.find(子串)
  4. ​erase(): 删除字符串中的一部分。 用法:str.erase(起始位置, 长度)
  5. ​append() / operator+=: 追加字符串。 用法:str.append(另一字符串)str += 另一字符串
  6. ​insert()​: 在指定位置插入字符串。 用法:str.insert(插入位置, 插入字符串)
  7. ​replace(): 替换字符串中的一部分。 用法:str.replace(起始位置, 长度, 替换字符串)
  8. ​compare()​: 比较两个字符串。 用法:str1.compare(str2)

3 条评论

  • @ 2025-3-31 12:50:33
    #include<bits/stdc++.h>
    using namespace std;
    void A(char c){//单个字符转换 
    	c=getchar();//输入单个字符 
    	//putchar(c);//输出单个字符 
    	if(islower(c)){//判断小写 
    		cout<<char(toupper(c));//转大写 
    		//注:转大写或转小写后会输出ASCLL码,所以要转char 
    	} 
    	else if(isupper(c)){//判断大写 
    		cout<<char(tolower(c));//转小写 
    	}
    	else if(isdigit(c)){//判断数字 
    		cout<<int(c); 
    	}
    	return;
    } 
    void B(int x){//字符串与数字的转换 
    	string s=to_string(x)+"250";//数字转字符
    	cout<<s<<'\n';
    	x=stoi(s)+1;//字符转数字
        //注:字符串转数字时里头不得有除数字外其它字符出现
    	cout<<x;
    }
    void C(string s){	//找整个字符串的中的y 
    	/*
    	cout<<s.find('y',3);//找第一个y的下标,从下标三开始找(不写默认为0) 
    	//若未找到 返回-1 
    	*/
    	int p=0;
    	while(s.find('y',p)!=-1){
    		int x=s.find('y',p);
    		cout<<x<<' ';
    		p=x+1;
    	}
    }
    void D(string s){//替换字符串 
    	s="jhy·simaada·yiheihua·yan";//原字符串 
    	string a="yiheihua";//被替换的部分 
    	string b="weiheihua";//替换内容 
    	int p=s.find(a);//取下标 
    	if(p!=-1){
    		s.replace(p,a.size(),b);//s.replase(开始替换下标,替换长度,内容) 
    	} 
    }
    void E(string s){//插入字符串 
    	s="jhy·simaada·yan";
    	string a="youfather·";
    	s.insert(0,a);//s.insert(下标,字符串)
    	//注:在下标之前插入	
    	cout<<s;
    } 
    void F(string s){//截取字符串 
    	string a=s.substr(0,7);//s.substr(开始位置,长度)
    	//注:若第二个参数不填则默认取到最后 
    	cout<<a;
    	return; 
    }
    void G(string s){//删除字符串
    	s.erase(0,7);//s.erace(开始位置,长度);
    	//注:删除后长度会缩小,所以若取长度不能用l得用s.size()
    	cout<<s;
    	return;
    }
    void H(){//转换整个字符串 (小写或大写) 
    	string a="JHY is god!!!She is the most clever god in the world!!!";
    	transform(a.begin(),a.end(),a.begin(),::tolower());//全部转小写,转大写将lower改为 upper 
    	//        开头    结尾    覆盖起始位置    要求
    	cout<<a;//JM!:KRWLKZGLRZXDDF:WYJSGLZMWYBXXZY:ZFLZFL:SLJJW!!! 
    	return; 
    } 
    int main(){
    	char c;
    	int x=1364;
    	string s="jhyyyds shenmingjhy!!!";
    	return 0;
    }
    
    😄 1
    • @ 2024-11-20 18:44:02

      谢谢老师

      • @ 2024-2-4 22:49:48

        结构体基本用法

        struct Person {
        string name;
        int age;
        double height;
        };
        

        创建结构体变量:

        一旦定义了结构体,您可以创建结构体变量,即实际的数据对象。

        Person person1; 
        // 创建一个名为 person1 的 Person 结构体变量
        

        访问结构体成员:

        要访问结构体成员,可以使用成员访问运算符 .,后跟成员的名称。

        person1.name = "John";
        person1.age = 30;
        person1.height = 175.5;
        

        初始化结构体:

        可以通过多种方式初始化结构体变量,包括在声明时初始化、逐个成员初始化或使用构造函数(如果定义了的话)

        Person person2 = {"Alice", 25, 162.0}; // 声明时初始化
        Person person3;
        person3.name = "Bob"; // 逐个成员初始化
        person3.age = 40;
        person3.height = 180.3;
        

        结构体作为参数和返回值:

        结构体可以作为函数的参数和返回值,以便在函数之间传递和操作复杂的数据。

        void printPerson(const Person& p) {
        cout << "Name: " << p.name << ", Age: " << p.age << ", Height: " << p.height << endl;
        }
        
        Person createPerson(const std::string& name, int age, double height) {
           Person p;
            p.name = name;
            p.age = age;
           p.height = height;
           return p;
        }
        
        👍 5
        • 1