字符串作为函数参数传入传出

/***
delSpace.c
***/
#include<stdio.h>
#include<string.h>int DelSpace(char *str)
{int iRet = -1;int i ;int j ;int ncount = 0;char *out = str;if(NULL == str ){printf("the point in is NULL\n");return iRet;}i = 0;j = strlen(out) - 1;while(isspace(out[i]) && out[i] != '\0'){i++;}while(isspace(out[j]) && out[j] != '\0'){j--;    }ncount = j - i + 1;strncpy(out,out+i,ncount);  //所有指向的地址空间是不能修改的 out[ncount] = '\0';iRet = 0;return iRet;
}int main()
{int iRet = -1;//char *p = "   abcdefg     ";  //分配的地址内存位于常量区 char buf[256] = "     abcdefd    ";  //这块内存空间分配在临时区栈区,可以进行修改。buf这个变量名是不允许修改的//iRet = DelSpace(p);iRet = DelSpace(buf);if(0 == iRet)printf("DelSpace success p = %s\n",buf);elseprintf("DelSpace error p = %s\n",buf);return 0;
}

分为两个字符串传入传出

#include<stdio.h>
#include<string.h>int trimSpace(char *in,char *out)
{int iRet = -1;int i = 0;int j = 0;int k = 0;char *tempIn = in;if(in == NULL || out == NULL){printf("NULL is error\n");return iRet;}i = 0;j = strlen(tempIn) - 1;while(isspace(tempIn[i]) && tempIn[i] != '\0'){i++;}while(isspace(tempIn[j]) && tempIn[j] != '\0'){j--;}while(i <= j){out[k++] = tempIn[i++];}out[k] = '\0';iRet = 0;return iRet;
}int main()
{int iRet = -1;char *p = "  abcf   ";char buf[256] = {0};iRet = trimSpace(p,buf);if(iRet != 0){printf("trimSpace error\n");}else{printf("trimSpace success\n");}printf("buf = %s\n",buf);return 0;}

转载于:https://www.cnblogs.com/wanghao-boke/p/11604844.html

字符串函数参数传入传出(去空格)相关推荐

  1. 字符串函数参数传入传出(字符串反转)

    /*** strstr.c ***/ #include<stdio.h> #include<string.h>//求字符串p中abcd出现的次数 //自定义函数接口完成业务函数 ...

  2. MySql的数据处理函数(字符串大小写、截取、去空格、日期时间的处理、常用时间处理函数)

    定义字符串全部大写(Upper) select name,Upper(name) as upper_name from vendors order by name; 2.实现大写/小写/去空格 Upp ...

  3. C/C++中,数组作为函数参数传入

    函数的参数可以是数组,且数组作为参数传入时,参数中数组的第一维不需要填写长度,如果是二维,那么第二维需要填写长度,在实际调用时也只需填写数组名.最重要的是,数组作为参数时,在函数中对数组元素的修改就等 ...

  4. CString字符串查找和截取与去空格(Find,FindOneOf,ReverseFind,Left,Mid,Right,substr,TrimLeft和TrimRight)

    一.CString之Find().FindOneOf().ReverseFind(). 此三个函数返回值均为整数int. 1.Find() 该函数从最左侧0位置开始索引,查找到第一个出现该字符的位置, ...

  5. php调用字符串函数参数,如何从包含参数的变量中存储的字符串调用PHP函数

    我从这里找到了问题.但我需要用参数调用函数名.我需要能够调用一个函数,但是函数名存储在一个变量中,这是可能的吗?例如: function foo ($argument) { //code here } ...

  6. js字符串函数 [http://www.cnblogs.com/qfb620/archive/2011/07/28/2119799.html]

    JS自带函数concat 将两个或多个字符的文本组合起来,返回一个新的字符串. var a = "hello"; var b = ",world"; var c ...

  7. Hive常用运算(关系运算)、逻辑运算与数学运算、数值运算、日期函数、条件函数、字符串函数

    hive 常用运算 第一部分:关系运算 Hive支持的关系运算符 •常见的关系运算符 •等值比较: = •不等值比较: <> •小于比较: < •小于等于比较: <= •大于比 ...

  8. C++ 函数参数 值传递与引用传递

    以前我们在C语言中函数参数传递过程中,如果我们想要让当A函数作用域中的变量经过B函数处理之后的数值仍然在A函数中生效,这个时候函数参数的传递时需要引用方式去传递,方式如下: #include < ...

  9. mysql 条件 函数_mysql 函数 时间函数,数学函数,字符串函数,条件判断函数

    =========================================== mysql 相关函数 ============================================= ...

最新文章

  1. Python 面向对象 基础
  2. escape()、encodeURI()、encodeURIComponent() difference
  3. python换中包_在Linux中替换已安装的python包中的源代码
  4. c语言现代方法16章 基础、课后习题、基础等
  5. 性能测试培训:定位jvm耗时函数
  6. java获取map数量_java – 如何从HashMap或LinkedHashMap获取有限数量的值?
  7. VMM2012应用指南之12- 创建自助服务用户并分配云
  8. IOS背景半透明渐变问题
  9. [zz] 使用ssh公钥密钥自动登陆linux服务器
  10. python与java区别-Java与Python到底有什么区别和共同点详细对比
  11. java jdk 9 64位下载地址_jdk9.0官方下载|jdk9 64位下载官方正式版 1.9 - 系统天堂
  12. android实现横向选择器,安卓开发 简单实现自定义横向滚动选择View : HorizontalselectedView...
  13. 【无人机驾照】无人机驾驶员考试题库选择题1060道(带答案)
  14. linux 平铺式桌面,Linux 桌面平铺管理器 - i3wm
  15. 《数论概论》读书笔记 第三章勾股数组与单位圆
  16. 使用Xamarin实现跨平台移动应用开发(转载)
  17. 【头歌】共享单车之数据存储
  18. 怎么学习CAD?初学CAD如何入门
  19. 人大金仓windows 10 安装闪退,改绿色安装方法,
  20. 剑三服务器维护是因为人太多吗,【剑网三相关 】阵营对战 从上午10点一直打到第二天凌晨6点半服务器维护 而且今天下午他们又开始打群架了...

热门文章

  1. 【腾讯Bugly干货分享】Android内存优化总结实践
  2. Android JNI编程(五)——C语言的静态内存分配、动态内存分配、动态创建数组...
  3. 数据值、列类型和数据字段属性
  4. acdream 1409 Musical 状压DP
  5. node--更新数据库问题
  6. UIImage 压缩
  7. Spring MVC+Ant+Tomcat+Eclipse最简单的demo
  8. (诡异事件)iframe标签后面的alert不执行
  9. 计算机网络 实验教案,《计算机网络》实验教案.pdf
  10. activemq安装与配置_ActiveMQ(消息队列)从入门到了解