c语言数字拼接成字符串

voidfind_non_ch(constchar*str);voidmain(){charstr[]="你12好";find_non_voidfind_non_ch(c... void find_non_ch(const char* str);

void main() {

char str[] = "你12好";

find_non_
void
find_non_ch(const char* str)
{
int o;
for (o = 0; o < strlen(str); o++)
{
if (str[o] >= 0 && str[o] <= 127)
printf("nuber--%d\n", o);
}
}
谁能帮我把打印的 printf("nuber--%d\n", o);数字拼接起来,变成字符串返回
展开
 我来答
cpucash
2013-12-06 · TA获得超过1585个赞
知道小有建树答主
回答量:1457
采纳率:66%
帮助的人:1004万
展开全部
你是想把ascii在0~127之间的字符变成int打印出来?
子函数是这么干的,没啥问题,你是想把他返回吧
这个也不难啊,在str这个字符串中做即可
就是把不在在这个范围内的字符去掉,后面的向前挪一下就搞定了
printf("nuber--%d\n", o)这个该一下,前面加一个变量如k=0;
这一句变成
str[k++]=str[o];即可
那么str就是返回的字符串,记得最后加上str的结束符,在主函数中打印即可
文小小胖
2013-12-06 · 超过46用户采纳过TA的回答
知道小有建树答主
回答量:109
采纳率:71%
帮助的人:37.6万
展开全部
char* find_non_ch(const char* str)
{
int o;
char *strRt;
strRt = new char[strlen(str)+1];
memset(strRt, 0, strlen(str)+1);
for (o = 0; o < strlen(str); o++)
{
if (str[o] >= 0 && str[o] <= 127)
sprintf(strRt,"%s%d", strRt,o);
}
return strRt;
}
注意用完后把返回值delete掉
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
anjielilin
2013-12-06
知道答主
回答量:36
采纳率:0%
帮助的人:17.5万
展开全部
例子一:

#include <stdio.h>

int main(void)
{
char str[] = "你12好";

int i;
for(i = 0; i < strlen(str); i++)
{
printf("%d\n",*(str+i));
}
return 0;
}
打印结果:
-28
-67
-96
49
50
-27
-91
-67

例子二:

#include <stdio.h>
#include <string.h>

void find_non_ch(const char *str)
{
int i = 0;

for(i = 0; i < strlen(str); i++)
{
if(*(str+i) >= 0 && *(str+i) <= 127)
printf("num-- %d\n",*(str+i));
}
}

int main(void)
{
char str[] = "你12好";

find_non_ch(str);

return 0;
}

打印结果:
num-- 49
num-- 50
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dengdayao
推荐于2016-07-15
知道答主
回答量:20
采纳率:0%
帮助的人:15.3万
展开全部
find_non_ch(const char* str)
{
int o;
char* pReStr = (char*) malloc(100);
memset(pReStr,0x00,100);
char tmp[3]={0};

for (o = 0; o < strlen(str); o++)
{
if (str[o] >= 0 && str[o] <= 127)
{
printf("nuber--%d\n", o);
sprintf(tmp,"%d",o);
strcat(pReStr,tmp);
}
}

return pReStr;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
与子如初见
2013-12-06 · TA获得超过1639个赞
知道小有建树答主
回答量:1117
采纳率:100%
帮助的人:832万
展开全部
没看懂你要问什么,可以说具体点么? 比如说举个例子。
追问
char str[] = "12代12";传入的
判断后腰得到12的索引下标非汉字的索引下标
返回结果应该是“nuber:1-2-5-6”
因为下标1256是非汉字字符
所以我怎么把这个下标的数字拼接成一个字符返回去,现在不是void么要有返回值的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式