天天看点

字符串函数

#include<bits/stdc++.h>
using namespace std;
const int  N = 1010;
int main(){
    char str[256] = { 0 };//str的大小(256)一定要填的。
    int data = 1024;
    /*
    //将data转换为字符串
    sprintf(str,"%d",data);
    cout<<str<<endl; 
    //获取data的十六进制
    sprintf(str,"%x",data);
    cout<<str<<endl; 
    //获取data的八进制
    sprintf(str,"%o",data);
    cout<<str<<endl;
    1024
    400
    2000
    */ 
    
    const char *s1 = "Hello";
    const char *s2 = "World";
    //连接字符串s1和s2
    sprintf(str,"%s %s",s1,s2);
    cout<<str<<endl; 
    // Hello World
    return 0;
}      
#include<bits/stdc++.h>
#include <string>
using namespace std;
const int  N = 1010;
int convert(string s){
    int i =0;
    int ans = 0;
    while(s[i]){
        if(isdigit(s[i])){
            ans=ans*10+s[i]-'0';
        }
        i++;
    }
    return ans;
}
int main(){
    string s = "1 23 # 4";
    stringstream ss(s);
    while(ss>>s){
        cout<<s<<endl;
        int val = convert(s);
        cout<<val<<endl;
    }
    1
    1
    23
    23
    #
    0
    4
    4
        return 0;
    }