首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

malloc分配字符串空间,该怎么处理

2012-02-26 
malloc分配字符串空间tc用malloc分配字符串空间后怎么赋中文字符?中文字符是文件中读入的,保存在buffer中。

malloc分配字符串空间
tc用malloc分配字符串空间后怎么赋中文字符?中文字符是文件中读入的,保存在buffer中。

[解决办法]
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
char buffer[]= "中文字符 ";
char s[4]={0};
strncpy(s, buffer, 2); // 中 ,汉字是两个连续字符,所以拷贝两个字符过来就是了
puts(s);

system( "pause ");
return 0;
}


[解决办法]
#include <iostream>
#include <tchar.h>
using namespace std;

void main()
{
std::wcout.imbue(std::locale( "CHS "));
wchar_t buffer[] =L "中文字符 ";

wcout < < buffer;
system( "pause ");
}
[解决办法]
楼上的那位是C++了。
要显示中文字符必须要字模的。
[解决办法]
可以用memcpy来按字节拷贝,

char buffer[]= "中文字符 ";
char out[100];
memcpy(out,buffer,sizeof(buffer));

热点排行