如何用C语言去除字符串两边的空字符

今天在一国外网站上, 看到下面的代码, 觉得挺精简.


代码如下:

char *tr ( char *s )
{
  int i = 0;
  int j = strlen ( s ) - 1;
  int k = 0;

while ( isspace ( s[i] ) && s[i] != '\0' )
    i++;

while ( isspace ( s[j] ) && j >= 0 )
    j--;

while ( i <= j )
    s[k++] = s[i++];

s[k] = '\0';

return s;
}

(0)

相关推荐

  • C语言实现将字符串转换为数字的方法

    本文实例讲述了C语言实现将字符串转换为数字的方法.分享给大家供大家参考.具体实现方法如下: C语言提供了几个标准库函数,可以将字符串转换为任意类型(整型.长整型.浮点型等)的数字.以下是用atoi()函数将字符串转换为整数的一个例子: 复制代码 代码如下: # include <stdio. h> # include <stdlib. h> void main (void) ; void main (void) {     int num;     char * str = &qu

  • C语言中字符串和数字的相互转换实现代码

    1.数字转换为字符串sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出.sprintf 是个变参函数,定义如下: int sprintf( char *buffer, const char *format [, argument] ... ); 除了前两个参数类型固定外,后面可以接任意多个参数.printf 和sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以"%"开头的格式说明符(format

  • C语言字符串原地压缩实现方法

    本文实例讲述了C语言字符串原地压缩的实现方法,对于学习字符串操作的算法设计有不错的借鉴价值.分享给大家供大家参考.具体方法如下: 字符串原地压缩示例: "eeeeeaaaff"压缩为"e5a3f2" 具体功能代码如下: /* * Copyright (c) 2011 alexingcool. All Rights Reserved. */ #include <iostream> #include <iterator> #include <

  • C语言求两个字符串的最长公共子串

    本文实例讲述了C语言求两个字符串的最长公共子串的方法.分享给大家供大家参考.具体实现方法如下: #include "stdio.h" #include "string.h" #include "stdlib.h" void getCommon(char str1[],char str2[],char * str3); int stringLength(char * str); void main(){ char str1[50]; char st

  • C语言实现字符串匹配KMP算法

    字符串匹配是计算机的基本任务之一. 举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"? 下面的的KMP算法的解释步骤 1. 首先,字符串"BBC ABCDAB ABCDABCDABDE"的第一个字符与搜索词"ABCDABD"的第一个字符,进行比较.因为B与A不匹配,所以搜索词后移一位. 2. 因为B与A不匹配,搜索词再往后移. 3. 就这样,直到字符

  • c语言输出字符串中最大对称子串长度的3种解决方案

    问题描述: 输入一个字符串,输出该字符串中最大对称子串的长度.例如输入字符串:"avvbeeb",该字符串中最长的子字符串是"beeb",长度为4,因而输出为4. 解决方法:中序遍历 一,全遍历的方法: 1.全遍历的方法,复杂度O(n3); 2.遍历原字符串的所有子串,然后判断每个子串是否对称: 实现方法是:我们让一个指针i从头至尾遍历,我们用另一个指针j从j=i+1逐一指向i后面的所有字符.就实现了原串的所有子串的遍历(子串为指针i到j中间的部分);最后判断得到的

  • 如何用C语言去除字符串两边的空字符

    今天在一国外网站上, 看到下面的代码, 觉得挺精简. 复制代码 代码如下: char *tr ( char *s ){  int i = 0;  int j = strlen ( s ) - 1;  int k = 0; while ( isspace ( s[i] ) && s[i] != '\0' )    i++; while ( isspace ( s[j] ) && j >= 0 )    j--; while ( i <= j )    s[k++]

  • javascript去除字符串左右两端的空格

    去除字符串左右两端的空格,在vbscript里面可以轻松地使用 trim.ltrim 或 rtrim,但在js中却没有这3个内置方法,需要手工编写.下面的实现方法是用到了正则表达式,效率不错,并把这三个方法加入String对象的内置方法中去. 写成类的方法格式如下:(str.trim();) 复制代码 代码如下: <script language="javascript"> String.prototype.trim=function(){    return this.r

  • jQuery Trim去除字符串首尾空字符的实现方法说明

    假如您的项目正在使用jQuery框架,要去除字符串首尾的空字符您当然会选择:jQuery.trim(string).如果没有用到jQuery如何简单的实现呢.之前本人曾发过一个代码小片段:Javascript去除字符串左右的空格-trim(),这个写的比较粗糙并要用到递规操作.所以很多人很不满意代码的质量,包括我在内.偶尔看了下jQuery的代码,发现非常值的我们学习. 看看它是怎么实现这个功能的吧,代码只有一句话:使用正则方法. JavaScript Trim实现代码function trim

  • php去除字符串中空字符的常用方法小结

    本文实例总结了php去除字符串中空字符的常用方法.分享给大家供大家参考.具体分析如下: php中包含四个可以去除字符串空格的函数: trim() – 去除字符串两端的空字符 ltrim() – 去除字符串前端的空字符 rtrim() – 去除字符串末尾的空字符 chop() –同rtrim(). 代码如下: <?php $text = "\t \t jb51.net!\t \t "; $leftTrimmed = ltrim($text); $rightTrimmed = rtr

  • C语言实现去除字符串中空格的简单实例

    在网上看了些去除空格的代码,觉得都不是很简洁,就自己写代码实现它本着高效率,不使用额外存储空间的想法实现该功能去除空格一共有三种: 1.去除全部空格: 2.一种是去除左边空格: 3.去除右边空格  想去除左右两边空格,只要先去除左边再去除右边的就行了 以下是实现代码: /*去除字符串中所有空格*/ voidVS_StrTrim(char*pStr) { char *pTmp = pStr; while (*pStr != '/0') { if (*pStr != ' ') { *pTmp++ =

  • 去除字符串左右两边的空格(实现代码)

    在日常工作中,过滤表单中的一些特殊的字符是很常见的功能,比如文本中要求输入单纯的数字,但用户有时会误输入一些多余的空格或其他字符混合的文本,这显然不符合输入要求. 下面一起来学习怎么样去除字符串左右两边的空格. 过滤前: 过滤后: HTML代码: <div class="main"> <input id="userName" type="text" placeholder="请输入用户名"> <i

  • MySql如何去除字符串前缀,两边,后缀

    目录 MySql去除字符串前缀,两边,后缀 效果 语句 Trim 函数 MySql字符串处理常用方法 1.在mybatis的Mapper.xml的sql语句中 2.trim()的使用 3.字符串拆分:SUBSTRING_INDEX(str, delim, count) 4.替换函数:replace( str, from_str, to_str) 5.获取字符串长度:LENGTH( str ) MySql去除字符串前缀,两边,后缀 效果 语句 select supplierNum, trim(LE

  • JS去除字符串中空格的方法

    本文实例讲述了JS去除字符串中空格的方法.分享给大家供大家参考,具体如下: 去掉字符串中的所有空格,不仅仅包含前后空格: text = text.replace(/\s/ig,''); 去掉前后空格: 第一种方法: 使用trim() function Trim(m){ while((m.length>0)&&(m.charAt(0)==' ')) m = m.substring(1, m.length); while((m.length>0)&&(m.charA

  • python去除字符串中的换行符

    今天写这个,要用python去除字符串中的换行符并写入文件,网上查阅,就一句代码replace("\n",""),加上之后,搞了半天,还是不对. 以上是我今天遇到的问题,以下是解决方案. 本地测试是window系统,正式用的时候是unix服务器.两者对换行符具体有什么差别我也不是很清楚.于是将 字符串写入的文件用 notepad++打开,显示 行尾符(如何用notepad++显示行尾符自己百度),发现是 CR, 所以将代码改为 replace("\r&qu

  • C语言去除相邻重复字符函数的实现方法

    C语言去除相邻重复字符函数的实现方法 字符去重函数 功能:去重字符串相邻重复的字符,不相邻的不用去重 参数: arg1 -- 输入字符串 arg2 -- 字符串开始位置 arg3 -- 字符串结束位置 要求: 输入参数为arg1时, 对这个字符串去重 输入参数为arg1,arg2时, 从arg2位置到字符串结束,去重 输入参数为arg1,arg2,arg3时,从arg2到arg3位置,去重 src/include/catalog/pg_proc.h DATA(insert OID = 6669

随机推荐