这个需要具体看编译器中汉字的编码情况,汉字编码是2至4个字节,我是手机编译器,汉字编码是3个字节,参考代码如下:
#include<stdioh>
char str = "你好123哈哈456";
int main()
{
int i;
for(i=0;str[i]!=0;++i)
if(str[i]>127){
printf("%c%c%c\n",str[i],str[i+1],str[i+2]);
i+=3-1;
}
else printf("%c\n",str[i]);
return 0;
}
#include<stdioh>
#include<stdlibh>
#include<stringh>
/
查找字符串首次出现的位置
charneedle[]="name";
charhaystack[]="mynameiszhangwoods";
printf("strpospositionis:%d",strpos(haystack,needle));
@paramhaystack在该字符串中进行查找
@paramneedle要查找的字符串
@return返回needle存在于haystack字符串起始的位置-1代表未找到
/
intstrpos(constcharhaystack,constcharneedle)
{
intn,p=0;
if(haystack&&needle)
{
while(haystack)
{
for(n=0;(haystack+n)==(needle+n);n++)
{
if(!(needle+n+1))
{
returnp;
}
}
p++;
haystack++;
}
}
return-1;
}
intmain(void)
{
charneedle[]="name";
charhaystack[]="mynameiszhangnamewoods";
printf("data:%d",strpos(haystack,needle));
return0;
}
扩展资料
C语言读取主字符串中指定的字符串
#include<stdioh>
#include<stringh>
intmain()
{
charstr[100];
sscanf("2737237:348384122","%[^:]:%[^\n]",str);//使用正则表达式:从:开始读取到最后
printf("%s\n",str);
return0;
}
以上就是关于C语言怎么从字符串中取出中文字符全部的内容,包括:C语言怎么从字符串中取出中文字符、C语言中,读取字符串中的一个位置、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)