C语言的项目开发模型(1)-字符串两头堵

2024-06-14 18:48

本文主要是介绍C语言的项目开发模型(1)-字符串两头堵,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

#include"stdio.h"
#include "stdlib.h"
#include "string.h"
#include "TestChar.h"

//测试主函数
int main(){
int returnValue = 0;
char *inBuff = "  abcdsdsefgdddd     ";
//在主调函数定义内存空间,用于被调函数修改内存
char outBuff[1024];
returnValue = trimSpace(inBuff, outBuff);
/*返回值的异常处理*/
if (returnValue != 0){
printf("trimSpace error:returnValue:%d", returnValue);
return 0;
}
printf("outBuff:%s\n", outBuff);
system("pause");


return 0;


}




/***
作者:一叶扁舟
时间:2016.8.19 23:24
作用:字符串项目开发模型,字符串两头堵的练习
**/


/***
作者:一叶扁舟
时间:2016.8.19 23:24
作用:字符串项目开发模型,字符串两头堵的练习
**/


#include "stdlib.h"
#include "string.h"
#include "stdio.h"
#include  "ctype.h"//isspace();
/**
1、有一个字符串开头或结尾含有n个空格(”   abcdefgdddd    ”),
   欲去掉前后空格,返回一个新字符串。
请自己定义一个接口(函数),并实现功能,编写测试用例。
**/


int  trimSpace(char *inBuff, char *outBuff){
//定义用来接收形参的值
char *inMyBuff;
int i=0, j = 0, count = 0;
inMyBuff = inBuff;

//得到字符串的长度,然后-1得到的是数组的最大坐标位置
j = strlen(inMyBuff)-1;
//指针从输入字符串的前面向后判断,找到不是空格的地方
while (isspace(inMyBuff[i]) && inMyBuff[i] != '\0'){
i++;
}
//指针从后往前寻找,找到不是空格的地方
while (isspace(inMyBuff[j]) && j > 0){
j++;
}


//字符串真实有效值
count = j - i + 1;
//拷贝字符串(将参数2中的字符串拷贝到参数一的起始地址位置,长度是count)
memcpy(outBuff, inMyBuff+i, count);
//在最后添加一个\0
outBuff[count] = '\0';
printf("字符串的长度:%d\n",count);
return 0;
}




这篇关于C语言的项目开发模型(1)-字符串两头堵的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1061222

相关文章

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

Go 语言中的select语句详解及工作原理

《Go语言中的select语句详解及工作原理》在Go语言中,select语句是用于处理多个通道(channel)操作的一种控制结构,它类似于switch语句,本文给大家介绍Go语言中的select语... 目录Go 语言中的 select 是做什么的基本功能语法工作原理示例示例 1:监听多个通道示例 2:带

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

MySQL更新某个字段拼接固定字符串的实现

《MySQL更新某个字段拼接固定字符串的实现》在MySQL中,我们经常需要对数据库中的某个字段进行更新操作,本文就来介绍一下MySQL更新某个字段拼接固定字符串的实现,感兴趣的可以了解一下... 目录1. 查看字段当前值2. 更新字段拼接固定字符串3. 验证更新结果mysql更新某个字段拼接固定字符串 -

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St