从标准C中的字符串中删除字符

从标准C中的字符串中删除字符,第1张

概述我在(ubuntu精确)linux系统上,我想从C中的字符删除前导字符(制表符).我认为以下代码正在处理我以前的安装(ubuntu oneric),但我发现它现在不起作用(请注意,这是一般UTF-8字符代码的简化版本):#include <math.h> #include <stdlib.h> #include <stdio

我在(ubuntu精确)linux系统上,我想从C中的字符串中删除前导字符(制表符).我认为以下代码正在处理我以前的安装(ubuntu oneric),但我发现它现在不起作用(请注意,这是一般UTF-8字符代码的简化版本):

#include 

我做

gcc -o removetab removetab.c

执行removetab时我得到了

MY_liNE_ORIG=   interface(quIEt=true):MY_liNE=interfae(quIEt==true):

注意“=”和缺少“c”的出版物!
什么是错的,或者我怎样才能实现这个目标.代码应该支持UTF-8字符串.最佳答案

strcpy(my_char,my_char+1);

strcpy字符串不得重叠.

从C标准(强调我的):

(C99,7.21.2.3p2) “The strcpy function copIEs the string pointed to by s2 (including the terminating null character) into the array pointed to by s1. If copying takes place between objects that overlap,the behavior is undefined.“

总结

以上是内存溢出为你收集整理的从标准C中的字符串中删除字符全部内容,希望文章能够帮你解决从标准C中的字符串中删除字符所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1046922.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)