c++中 拷貝子字符串(copy substring!!)
實現功能:
拷貝任意字符串的子字符串.
使用函數:strncpy_s
MSDN解釋:
errno_errno_t strncpy_s(
char *strDest,
size_t numberOfElements,
const char *strSource,
size_t count
);
其中各個變量的含義:
strDest:目標字符串
numberOfElements:目標字符串的大?。?span style="COLOR: red">以字符為單位)
strSource:源字符串
count:要拷貝的字符串的字符數
Demo:
將morning拷貝到一個新的變量中




對于寬字符使用如下:
errno_t wcsncpy_s(
wchar_t *strDest,
size_t numberOfElements,
const wchar_t *strSource,
size_t count
);
方法二:
void *_memccpy( void *dest, const void *src, int c, size_t count );
解釋:
c為最后一個要拷貝的字符
count為dest中可容納的最大字符數
功能就是將從source開始到c的字符串拷貝到新的變量中。
void test()
{
char buffer[61];
char *pdest;
char string1[60] = "The quicks brown dog jumps over the lazy fox";
printf( "Function: _memccpy 60 characters or to character 's'\n" );
printf( "Source: %s\n", string1 );
pdest = (char*)_memccpy( buffer, string1+4, 's', 60 );
*pdest = '\0';
printf( "Result: %s\n", buffer );
printf( "Length: %d characters\n", strlen( buffer ) );
}