如何去掉字符串中的最后一个字符

yanjinc 2009-10-10 04:31:43
如何去掉字符串中的最后一个字符比如22,223,44,要把最后一个逗号给去掉。麻烦用c语言。多谢了!
...全文
1276 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuexingyang 2011-09-23
  • 打赏
  • 举报
回复
这个还要看字符串是怎么定义的吧!
第一,如果字符串这样定义:char *str="abcdefg,",
再利用6楼说的
str[strlen(str)-1]=0;
会报错的。
第二,如果定义一个char *str;
然后malloc空间,再往空间中赋值,再对字符串那样操作就行了。
flyingzuo 2009-10-12
  • 打赏
  • 举报
回复
6楼和8楼简单明了
yanjinc 2009-10-12
  • 打赏
  • 举报
回复
多谢大家,顺利解决
jkx01whg 2009-10-10
  • 打赏
  • 举报
回复
str[strlen(str)-1]=0;就可以
haigan123456 2009-10-10
  • 打赏
  • 举报
回复
都干什么,绣花
pcboyxhy 2009-10-10
  • 打赏
  • 举报
回复
不好意思,弄错了,还要-1

str[strlen(str)-1]=0;
lihan6415151528 2009-10-10
  • 打赏
  • 举报
回复
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;

int main()
{
string str = "22,223,44,";
int i = str.length();
str = str.substr(0,i-1);
cout<<str;
}
pcboyxhy 2009-10-10
  • 打赏
  • 举报
回复
str[strlen(str)]=0;
DLevel 2009-10-10
  • 打赏
  • 举报
回复

char c[] = "23,34,44,";
c[strlen(c)-1]='\0';
starcat 2009-10-10
  • 打赏
  • 举报
回复

for(i = 0; str[i+1] != '\0'; i++)
;
str[i] = 0;
lhy 2009-10-10
  • 打赏
  • 举报
回复
找到0,把0前最后一个字符变成0。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧