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

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

#include dio.h>
#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.

相关文章

文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件。特点:最新、最快、最准确。 用法:...
非交互式添加分区 方法一 添加/deb/sdb 下的分区,其实位置为1到1000M,第二个分区位置为1001至3000M,...
编译安装httpd 1 去官网下载源码包 为避免非法软件,一定要去官网下载http://www.apache.org httpd-2.4...
gdisk用法 gdisk - InteractiveGUIDpartitiontable (GPT) manipulator GPTfdisk (akagdisk) isatext-mo...
1 一定用快捷键 这里简单的说下几个常用的快捷按键。 1.1 移动光标快捷键 Crtl + a 光标回到命令行...
bash shell中测试命令 test命令提供了if-than语句中测试不同条件的途径。如果test命令中列出的条件成立...