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

相关推荐
likerhood19 小时前
Java的TimeUnit详细讲解
java·开发语言
2401_8971905519 小时前
【C++高阶系列】告别内查找局限:基于磁盘 I/O 视角的 B 树深度剖析与 C++ 泛型实现!
java·c++·算法
沐知全栈开发19 小时前
Lua 数组
开发语言
xyq202419 小时前
优化堆排序
开发语言
多加点辣也没关系19 小时前
数据结构与算法|第十一章:跳表
数据结构·算法
m2xgo19 小时前
ThreadPoolexecutor源码分析、C++11线程池实现
开发语言·c++
晚风叙码19 小时前
归并排序:从原理到非递归实现,一文搞定
数据结构·算法
@#¥&~是乱码鱼啦19 小时前
AOP底层:动态代理执行流程(“断点之谜“)
java·开发语言
悲伤小伞19 小时前
LeetCode 热题 100_3-128. 最长连续序列
c++·算法·leetcode·哈希算法
学困昇19 小时前
彻底搞懂 Linux 基础 IO:文件描述符、重定向、dup2、缓冲区一次讲透!
linux·运维·服务器·开发语言·c++