C++ 3.25作业

1、定义自己的命名空间,其中有string类型的变量,再定义两个函数,一个函数完成字符串的输入,一个函数完成求字符串长度,再定义一个全局函数完成对该字符串的反转

cpp 复制代码
#include <iostream>

using namespace std;

namespace DX
{
    string s1;
    string fun_in(string s1);
    void fun_length(string s1);
}
using namespace DX;

string DX::fun_in(string s1)
{
    cout << "请输入字符串:" ;
    getline(cin,s1);
    return s1;
}

void DX::fun_length(string s1)
{
    cout << "字符串长度为:" << s1.length() << endl;
}

void fun_swap(string s1)
{
    char temp = 0;
    int len = s1.size();
    int i = 0;
    while(i < (len-1-i))
    {
        temp = s1.at(i);
        s1.at(i) = s1.at(len-1-i);
        s1.at(len-1-i) = temp;
        i++;
    }
    cout << "反转后的字符串为:" << s1 << endl;
}

int main()
{
    string s1 = fun_in(DX::s1);
    cout << s1 << endl;
    fun_length(s1);
    fun_swap(s1);
    return 0;
}

2、思维导图

3.有以下定义,说明哪些量可以改变哪些不可以改变?

①const char *p; p的指向可以修改,p指针指向的内容不可以修改

②const (char *) p; 和1一样,p的指向可以修改,p指针指向的内容不可以修改

③char *const p; p指针指向的内容可以修改,p的指向不可以修改

④const char* const p; p的指向和p指向的内容都不可以修改

⑤char const *p; 和1一样,p的指向可以修改,p指针指向的内容不可以修改

⑥(char *) const p; 和3一样,p指针指向的内容可以修改,p的指向不可以修改

⑦char const* const p; p的指向和p指向的内容都不可以修改

相关推荐
垆边人似月.1 分钟前
最少的元素个数使和为 target
数据结构·c++·算法
炽橙超真云3 分钟前
2D 工程图纸如何自动转成可编辑 3D 模型?拆解读图与建体两条技术路径(DXF/DWG/PDF 到 STEP)
算法·3d·工业智能·工业ai
benchmark_cc5 分钟前
实时行情系统如何避免无意义的重复请求?从请求去重到缓存设计
大数据·开发语言·python·pandas·量化交易·股票数据·quantdash
田里的水稻6 分钟前
Python_两大法宝dir() 与 help() 的妙用
开发语言·python
郝学胜-神的一滴7 分钟前
Python浏览器自动化:Selenium与Playwright实战对比,网页爬虫&自动操作一站式指南
开发语言·爬虫·python·selenium·程序人生·自动化
Zip-List9 分钟前
工作小记-pytorch的算子优化: 转gpu核函数 python调c
c语言·c++·pytorch·python·cuda
夕除11 分钟前
redis--dict rehash
算法·哈希算法
土豆.exe12 分钟前
chunked 编码的行尾:Go、h11 与 Tomcat 各错在哪一处
开发语言·网络安全·golang·tomcat
磊 子13 分钟前
什么是虚假唤醒(spurious wakeup)?从 POSIX 标准讲到 futex 内核
java·开发语言
暖焰核心23 分钟前
多态全解——虚函数、重写、虚表与多态原理
c++