逐個字符複製一個C-串到字符數組中

書上的方法是:

#include<iostream.h>
char* myStrcpy(char* s1,const char* s2)
{
 char* s=s1;
 while(*s++ = *s2++);

 return s1;
}

int main()
{
 char a[50];
 const char* s="Hello, I am a student./n";
 cout<<myStrcpy(a,s);
}

 

 而while(*s++ = *s2++);這一句相當於執行下列操作序列:

 while(1)
 {
  *s=*s2;  

  s2++;   
  char* temp=s;  

  s++;   
  if(*temp==0) break; 

 }

我想能不能不用從新定義字符指針實現這個功能,後發現用以下方法也可以實現:

 while(1)
 {
  *s=*s2;   
  if(*s==0) break;
  s2++;   
  s++;   
 }
經過編譯連接獲得了成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章