//strncpy
///原型:extern char *strncpy(char *dest, char *src, int n);
///功能:把src所指由NULL結束的字元串的前n個位元組複制到dest所指的數組中,取代dest
/// 中最前面的n個字元。
///說明:如果src的前n個位元組不含NULL字元,則結果不會以NULL字元結束。
/// 如果src的長度小于n個位元組,則以NULL填充dest直到複制完n個位元組。
/// src和dest所指記憶體區域不可以重疊且dest必須有足夠的空間來容納src的字元串。
/// 傳回指向dest的指針。
#include <stdio.h>
#include <stdlib.h>
char* strncpy(char *dest,char *src,unsigned int n){
char *strRtn=dest;
while(n && (*dest++=*src++)){
n--;
}
printf("n:%d/n",n);
if(n)
{
while(--n)
*dest++;
}
return strRtn;
}
int main(){
char* dest=(char*)malloc(sizeof(char)*100);
char *src="helloworld!";
printf("%s/n",strncpy(dest,src,300));
}