C语言怎么在字符串中删掉最后一个字符

如上,我用C语言从txt里读取一行字符串,怎么实现删掉这一行字符串的最后一个字符,然后写入txt中,求删掉字符的语句和解释,求大神

char s[100]={0};
fgets(s,sizeof(s),fp);//从fp指向的文件中提出最多100个字符的一行字符。
s[strlen(s)-1]='\0';//让最后一个字符的ASCII码为0,即结束标志。
fputs(s,fw);//将s写入fw指向的文件中。

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-05-09
#include <string.h> // 包含函数strlen()
。。。。。。。。。。。。
int len = strlen(str); // 获取str的字符串长度
str(len - 1) = '\0'; // 用'\0'覆盖最后一个有效字符
。。。。。。。。。。。。。
第2个回答  推荐于2016-07-22
只要先找到字符串的串尾,再把串尾标记前移一位就行了。
char *p,s[100]="1234567890";
for(p=s;*p;p++);
*(--p)='\0';
printf("%s\n",s);
第3个回答  推荐于2018-03-05
char line[100]={0};
fgets(line,sizeof(line),fp);
line[strlen(line)-1]='\0';
fputs(line,fw);

简单就是这样 详细的自己写

要是还是不会

找我要完整代码本回答被网友采纳
相似回答