把它注释掉运行看看就知道干嘛用的。
										
					
	
	
	
	      以下是引用ke_liu在2020-3-14 11:39:21的发言:
请问一下"while(*p1)*p1++ = 0;"这句是干什么的?
请问一下"while(*p1)*p1++ = 0;"这句是干什么的?
 2020-03-14 11:45
	    2020-03-14 11:45
   程序代码:
程序代码:#include<iostream>
#include<string>
using namespace std;
int main(void)
{
    int m;
    string str,str1;
    int StringLength(string);
    void Partial_replication(string,int,string);
    cout<<"请输入一个字符串:"<<endl;
    cin>>str;
    cout<<"请输入被复制的部分字符串的起始字符在原字符串中的位置m(m<"<<StringLength(str)<<")";
    cin>>m;
    Partial_replication(str,m,str1);
    return 0;
}
void Partial_replication(string str,int m,string str1)
{
    int StringLength(string str);
    char *p=&str[0];
    int i=0;
    for(m=m-1;m;p++,m--)
    *p=0;
    str1=str;
    cout<<str1<<endl;
} 
int StringLength(string str)
{
    char *p;
    int i=0;
    for(p=&str[0];*p!='\0';p++)
    i++;
    return i;
}										
					
	 2020-03-14 11:46
	    2020-03-14 11:46
   2020-03-14 11:47
	    2020-03-14 11:47
   2020-03-14 12:06
	    2020-03-14 12:06
   
										
					
	 2020-03-14 13:55
	    2020-03-14 13:55
   2020-03-14 16:58
	    2020-03-14 16:58