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指向的内容都不可以修改

相关推荐
6Hzlia7 分钟前
【Hot 100 刷题计划】 LeetCode 199. 二叉树的右视图 | C++ DFS 逆序遍历
c++·leetcode·深度优先
-Marks-11 分钟前
【C++编程】STL简介 --- (是什么 | 版本发展历程 | 六大组件 | 重要性缺陷以及如何学习)
开发语言·c++·学习·stl·stl版本
HealthScience1 小时前
【Bib 2026】基因最新综述(有什么任务、benchmark、代表性模型)
android·开发语言·kotlin
wjs20241 小时前
CSS 网格元素
开发语言
CappuccinoRose1 小时前
回溯法 - 软考备战(四十三)
算法·排列组合·路径·n皇后·子集·解数独·岛屿
AC赳赳老秦1 小时前
OpenClaw进阶技巧:批量修改文件内容、替换关键词,解放双手
java·linux·人工智能·python·算法·测试用例·openclaw
Java小白笔记1 小时前
OpenClaw 实战方法论
java·开发语言·人工智能·ai·全文检索·ai编程·ai写作
CoderCodingNo1 小时前
【信奥业余科普】C++ 的奇妙之旅 | 12:程序的交互与加工——数据的输入与算术运算
开发语言·c++
yx868xy1 小时前
Cuda加速直线拟合
c++·cuda