#include <iostream>
using namespace std
#include <string.h>
int main(){
char token[] = "some random string";
char c[23];
strcpy(c, token);
strncpy(c, token, 5);
c[strlen(c)] = '\0';
cout<<c;
return 0 ;
}
我的輸出是:some random string
。但我期望它是:some
。任何人都可以解釋爲什麼它的行爲如此嗎?strncpy未按預期工作
我推薦使用'std :: string'。 – Rapptz