复制数组

将数组放到结构体中,直接使用“=”就能将数组中的值全部拷贝到其他相同类型的数组中。 

#include <stdio.h>    
struct array_tag{  
     int a[10];  
};  
  
int main(void){  
     struct array_tag m = {{1,2,3,4,5,6,7,8,9,0}};  
     int i;  
     for(i=0;i<10;i++){  
           printf("%d ",m.a[i]);  
     }  
     printf("\n");  
  
     struct array_tag n = m;  
     for(i=0;i<10;i++){  
          printf("%d ",n.a[i]);  
     }  
     printf("\n");  
     return 0;  
}  

运行结果为: 

1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0 

注意:如果结构体中包含指针,则意味着任何指针成员的副本都和原指针指向同一地方(浅拷贝)。换言之,任何指针指向的内容都没有复制。

posted @ 2015-06-26 20:34  neteasefans  阅读(136)  评论(0编辑  收藏  举报