源码:
#include <QCoreApplication>#include <stdio.h>#include <ostream>using namespace std;
int getstr(char *str);int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); char *str = "E:\\我的文档\\我的学习\\MicroSoft"; printf("main1: %s\n", str);
char str1[] = "E:\\我的文档\\我的学习\\MicroSoft"; printf("main2: %s\n", str1);
getstr(str1); return a.exec();}
int getstr(char *str){ char szs[256]; memcpy(szs, str, sizeof(str)); printf("1: %s\n", szs); //这里
memcpy(szs, "E:\\我的文档\\我的学习\\MicroSoft", sizeof("E:\\我的文档\\我的学习\\MicroSoft")); printf("2: %s\n", szs);
return 0;}为什么红色那个输出不能够正确输出呢?貌似是字符编码的问题,哪位高手知道的,希望能够解答,不胜感激!