作业要求:
- 整理思维导图
- 定义自己的命名空间,其中有string类型的变量,再定义两个函数,一个函数完成字符串的输入,一个函数完成求字符串长度,再定义一个全局函数完成对该字符串的反转
- 有以下定义,说明哪些量可以改变哪些不可以改变?
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;



















