C语言字符处理,新手求指教
,c语言怎样把一个字符串中指定字符赋值给另一字符串呢,例如输入一段文字“一只小狐狸拒绝被人圈养”str1把小狐狸复制给另一字符串str2
[解决办法]
可以使用substr函数提取子串。
基本使用方法:substr(原字符串,起始位置,提取字符个数)
例如substr(str1,5,6)则为“小狐狸”
[解决办法]
用strncpy函数。
[解决办法]
lz题意不明,你既然都知道“小狐狸”这个字符串了,就无所谓从str1中复制到str2了,这样就可以了
char str2[] = "小狐狸";
如果你的意思是取str1中的某一段,比如从第3个字符开始赋值4个到str2
strncpy(str2,str1+3 ,4);
[解决办法]
strcpy应该可以吧
[解决办法]
利用一个指针
不要直接赋值过去,因为数组名是常量,不能作为左值出现的
[解决办法]
或者像上面所说的,用<string.h>里面的函数strcpy
[解决办法]
通过指针定位需要拷贝字符串的起始位置,然后用strncpy()函数
[解决办法]
#include <stdio.h>
#include <string.h>
#include <locale.h>
int main() {
wchar_t str1[]=L"一只小狐狸拒绝被人圈养";
wchar_t str2[4];
_wsetlocale(LC_ALL,L"chs");
wcsncpy(str2,str1+2,3);str2[3]=0;
wprintf(L"%s\n",str2);//小狐狸
return 0;
}