int main()
{
char string[10], str1[10];//在数组中,数组名就指的是地址
int i;
for (i = 0; i < 9; i++)
{
str1[i] = 'a';
}
str1[9] = '\0';
strcpy_s(string, str1);//strcpy_s会从源地址一直往后拷贝,直到遇到'\0'为止
}
strcpy与strcpy_s功能是一样的,只不过后者更稳定,将后者地址的内容复制给前者,下面写下完整版的该函数。
char * strcpy( char *strDest, const char *strSrc )
{
assert( (strDest != NULL) && (strSrc != NULL) );//assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行。
char *address = strDest;
while( (*strDest++ = * strSrc++) != ‘\0’ );
return address;
1
}