C++ string转long long,substr,docker服务命令和Centos 7 配置防火墙

第一周(10.17~10.23)

一,C++ string转long long

我们可以用stringstream进行转换,头文件#include <sstream>

#include <iostream>
#include <sstream>
using namespace std;
​
int main()
{
    string strLLNum = "1234567890123";
    stringstream strIn;
    strIn<<strLLnum;
    long long llNum;
    strIn>>llNum;
    cout<<llNum;
    return 0;
}

二,C++ string 简单截取字符串使用之substr

substr 函数原型:

原型:string substr (size_t pos = 0, size_t len = npos) const;
参数说明:pos=截取起始位 ,len=截取长度。
返回值:子字符串

用法一:截取下标从2(也就是从第三个字符起)开始到字符串结尾的字符串

#include <string>
#include <iostream>
using namespace std;
​
int main() {
​
    string strInfo = "Hello Word!";
    strInfo = strInfo.substr(2);
    cout << "strInfo=" << strInfo.c_str() << endl; //最终输出显示:strInfo=llo Word!
    return 0;
}

用法二:截取文件后缀类型名称

    string strFileName = "ComponentConfig.ini";
    strFileName = strFileName.substr(strFileName.find_last_of(".") + 1);
    cout << "strFileName=" << strFileName.c_str() << endl;                   //最终输出显示:strFileName=ini,得到扩展名

用法三:截取下标从2(第3个字符起)开始截取3个字符的字符串

    string strInfo = "Hello Word!";
    strInfo = strInfo.substr(2, 3);
    cout << "strInfo=" << strInfo <<  endl; //最终输出显示:strInfo=llo,从下标元素为2开始向后到第3位

用法四:截取文件名而不要扩展名

    string strFileName = "ComponentConfig.ini";
    strFileName = strFileName.substr(0, strFileName.find_last_of("."));
    cout << "strFileName=" << strFileName.c_str() << endl;          
//最终输出显示:strFileName=ComponentConfig,截取到不含扩展名的文件名

三,c++读取文件夹下的所有文件名

// linux
#include <iostream>
#include <sys/types.h>
#include <dirent.h>
#include <vector>
void getFiles(string path, vector<string>& filenames)
{
    DIR *pDir;
    struct dirent* ptr;
    if(!(pDir = opendir(path.c_str()))){
        cout<<"Folder doesn't Exist!"<<endl;
        return;
    }
    while((ptr = readdir(pDir))!=0) {
        if (strcmp(ptr->d_name, ".") != 0 && strcmp(ptr->d_name, "..") != 0){
            filenames.push_back(path + "/" + ptr->d_name);
        }
    }
    closedir(pDir);
}

四,docker服务命令

# 启动:
systemctl start docker
​
#守护进程重启:
systemctl daemon-reload
​
#重启docker服务:
systemctl restart docker / service docker restart
​
#关闭:
docker service docker stop / docker systemctl stop docker

docker出现Error response from daemon: driver failed programming external connectivity on endpoint解决方法

systemctl restart docker

五,Centos 7 配置防火墙

1、查看firewall服务状态

systemctl status firewalld

2、查看firewall的状态

firewall-cmd --state

3、开启、重启、关闭、firewalld.service服务

# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop

4、查看防火墙规则

firewall-cmd --list-all 

5、查询、开放、关闭端口

# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
​
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
​
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值