2024-03-25 作业

作业要求:

  1. 整理思维导图
  2. 定义自己的命名空间,其中有string类型的变量,再定义两个函数,一个函数完成字符串的输入,一个函数完成求字符串长度,再定义一个全局函数完成对该字符串的反转
  3. 有以下定义,说明哪些量可以改变哪些不可以改变?

        const char *p;

        const (char *) p;

        char *const p;

        const char* const p;

        char const *p;

        (char *) const p;

        char const* const p;

作业1:

作业2:

运行代码:

#include <iostream>
#include <cstring>
using namespace std;
namespace Str{
    string str1;
    void strscan();
    int mystrlen();
}
using namespace Str;
void Str::strscan(){
    getline(cin,str1);
}
void strback(string *str,int len){
    int i;
    for(i=0;i<len/2;i++){
        char temp = (*str)[i];
        (*str)[i]=(*str)[len-i-1];
        (*str)[len-1-i]=temp;
    }
}
int Str::mystrlen(){
    int len = str1.length();
    return len;
}
int main()
{
    int len = 0;
    strscan();
    cout<<"str1="<<str1<<endl;
    len = Str::mystrlen();
    cout<<"strlen="<<len<<endl;
    strback(&str1,len);
    cout<<"str1="<<str1<<endl;
    return 0;
}

运行截图:

作业3:

                                                    可以变                      不可以变

         const char *p;                       指向                          值

        const (char *) p;                    指向                           值

        char *const p;                       值                              指向

        const char* const p;                                                值和指向

        char const *p;                       指向                            值

        (char *) const p;                    值                                指向

        char const* const p;

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值