字符编辑技术C语言实现

简介: #include#include#include/*插入函数 ccode待插入的字符 anystring被插入的字符串 spos插入到字符串的位置*/void cinsert(char ccode,char *anystring,int spos) ;/*删除函数 anystri...
#include<string.h>
#include<ctype.h>
#include<stdio.h>

/*插入函数 ccode待插入的字符 anystring被插入的字符串 spos插入到字符串的位置*/
void cinsert(char ccode,char *anystring,int spos) ;
/*删除函数 anystring被删除的字符串 spos删除第几个字符*/
void cdelete(char *anystring,int spos) ;

int main(void)
{ 
	char p[] = "helloworld" ; 
	cinsert('Y' , p , 6) ; 
	printf("往第6个位置插入字符Y:p = %s\n",p);
	cdelete(p , 6); 
	printf("删除字符串中的第6个字符:p = %s\n",p);
	return 0 ;
}
/*插入函数 ccode待插入的字符 anystring被插入的字符串 spos插入到字符串的位置*/
void cinsert(char ccode,char *anystring,int spos)
{
    int p;  
    p=strlen(anystring);  /*字符串的长度*/
    spos=spos<0?0:spos;  /*插入范围*/
    spos=spos>=p?p:spos;
    for(;p>=spos;p--)
        anystring[p+1]=anystring[p]; /*从数组最后那那个元素开始向上加*/
    anystring[spos]=ccode;  /*插入该字符*/
}

/*删除函数 anystring被删除的字符串 spos删除第几个字符*/
void cdelete(char *anystring,int spos)
{
    int p;
    p=strlen(anystring);  /*字符串的长度*/
    if(p>0&&spos>=0&&spos<=p){
        while(spos<p)
        {
            anystring[spos]=anystring[spos+1];
            spos++;
        }
    }
}

运行结果:


目录
相关文章
|
安全 C语言
C语言中的字符、字符串及内存操作函数详细讲解
通过这些函数的正确使用,可以有效管理字符串和内存操作,它们是C语言编程中不可或缺的工具。
527 15
|
存储 算法 C语言
【C语言】字符常量详解
字符常量是C语言中处理字符数据的重要工具。通过单引号括起一个字符,我们可以方便地使用字符常量进行字符判断、字符运算和字符串处理等操作。理解字符常量的表示方法、使用场景和ASCII码对应关系,对于编写高效的C语言程序至关重要。
1550 11
|
存储 C语言 开发者
【C语言】格式化输出占位符及其标志字符详解(基于ISO/IEC 9899:2024)
在C语言中,格式化输出通过 `printf` 函数等格式化输出函数来实现。格式说明符(占位符)定义了数据的输出方式,标准ISO/IEC 9899:2024(C23)对这些格式说明符进行了详细规定。本文将详细讲解格式说明符的组成部分,包括标志字符、宽度、精度、长度修饰符和类型字符,并适当增加表格说明。
1522 6
|
人工智能 安全 算法
基于C语言的嵌入式系统开发,涵盖嵌入式系统概述、C语言的优势、开发流程、关键技术、应用实例及面临的挑战与未来趋势。
本文深入探讨了基于C语言的嵌入式系统开发,涵盖嵌入式系统概述、C语言的优势、开发流程、关键技术、应用实例及面临的挑战与未来趋势。C语言因其高效、可移植、灵活及成熟度高等特点,在嵌入式系统开发中占据重要地位。文章还介绍了从系统需求分析到部署维护的完整开发流程,以及中断处理、内存管理等关键技术,并展望了嵌入式系统在物联网和人工智能领域的未来发展。
894 1
C语言字符(串)函数
C语言字符(串)函数
|
存储 C语言
【C语言基础考研向】10 字符数组初始化及传递和scanf 读取字符串
本文介绍了C语言中字符数组的初始化方法及其在函数间传递的注意事项。字符数组初始化有两种方式:逐个字符赋值或整体初始化字符串。实际工作中常用后者,如`char c[10]=&quot;hello&quot;`。示例代码展示了如何初始化及传递字符数组,并解释了为何未正确添加结束符`\0`会导致乱码。此外,还讨论了`scanf`函数读取字符串时忽略空格和回车的特点。
830 8
|
存储 人工智能 C语言
C语言程序设计核心详解 第六章 数组_一维数组_二维数组_字符数组详解
本章介绍了C语言中的数组概念及应用。数组是一种存储同一类型数据的线性结构,通过下标访问元素。一维数组定义需指定长度,如`int a[10]`,并遵循命名规则。数组元素初始化可使用 `{}`,多余初值补0,少则随机。二维数组扩展了维度,定义形式为`int a[3][4]`,按行优先顺序存储。字符数组用于存储字符串,初始化时需添加结束符`\0`。此外,介绍了字符串处理函数,如`strcat()`、`strcpy()`、`strcmp()` 和 `strlen()`,用于拼接、复制、比较和计算字符串长度。
902 4
|
存储 安全 编译器
深入C语言库:字符与字符串函数模拟实现
深入C语言库:字符与字符串函数模拟实现
321 0
|
C语言
C语言常见字符函数和字符串函数精讲
C语言常见字符函数和字符串函数精讲
|
C语言
【C语言篇】字符和字符串以及内存函数详细介绍与模拟实现(下篇)
perror函数打印完参数部分的字符串后,再打印⼀个冒号和⼀个空格,再打印错误信息。
578 0