memcpy()的函数使用案例
1、将数组num1的值复制到数组num2中
#include < stdio. h>
#include < string. h>
using namespace std;
int main ( )
{
int num1[ 8 ] = { 1 , 3 , 5 , 7 , 9 } ;
int num2[ 8 ] ;
memcpy ( num2, num1, sizeof ( num2) ) ;
printf ( "num2:\n" ) ;
for ( int i= 0 ; i<= 4 ; i++ )
printf ( "%d " , num2[ i] ) ;
return ( 0 ) ;
}
输出:
num2:
1 3 5 7 9
2、将 s 中第 7 个字符开始的 6个连续字符复制到 s2中
#include< stdio. h>
#include< string. h>
int main ( )
{
char s1[ 18 ] = "0123456789ABCDEF" ;
char s2[ 18 ] ;
memcpy ( s2, s1+ 7 , 6 ) ;
s2[ 6 ] = '\0' ;
printf ( "%s" , s2) ;
return 0 ;
}
输出:
789ABC
3、覆盖原有部分数据
#include< stdio. h>
#include< string. h>
int main ( void )
{
char s1[ ] = "***" ;
char s2[ ] = "abcdefg" ;
printf ( "使用 memcpy 前: %s\n" , s2) ;
memcpy ( s2, s1, strlen ( s1) ) ;
printf ( "使用 memcpy 后: %s\n" , s2) ;
return 0 ;
}
输出:
使用 memcpy 前: abcdefg
使用 memcpy 后: ***defg
字符串操作函数
1、将字符串str1的值复制到字符串 str2 中(整数数组也可以使用)
#include < stdio. h>
#include < string. h>
int main ( )
{
char str1[ 18 ] = "hello word!" ;
char str2[ 18 ] ;
strcpy ( str2, str1) ;
printf ( "str2 = %s\n" , str1) ;
return ( 0 ) ;
}
输出:
hello word!