菜。
segment default,
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
char* aa="hell world!";
int len=strlen(aa);
cout<<len<<endl;
int i=0;
while(len--)
{
cout<<aa[i++];
aa[i-1]='o';
}
int len1=strlen(aa);
int j=0;
while(len1--)
cout<<aa[j++];
}
原因:
不能直接对aa[i] 一个个的修改,
通过修改aa的指向来修改aa的值。
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
char* aa="hell world!";
int len=strlen(aa);
cout<<len<<endl;
char bb[len]={0};
int i=0;
while(len--)
{
bb[i]='t';
cout<<aa[i++];
}
cout<<endl;
aa=bb;
int len1=strlen(aa);
int j=0;
while(len1--)
cout<<aa[j++];
cout<<endl;
char* cc="666 , 6666!";
aa = cc;
for(int i=0;i<strlen(cc);i++)
{
cout<<aa[i];
}
cout<<endl;
return 0;
}