有个函数:char* reverse(char *buf)

 *Author  : DavidLin
 *Date    : 2014-12-15pm
 *Email   : [email protected] or [email protected]
 *world   : the city of SZ, in China
 *Ver     : 000.000.001
 *For     : reverse the char array/string!
 *history :     editor      time            do
 *          1)LinPeng       2014-12-15      created this file!
 *          2)
 */  

char * reverse(char * buf)
{
	int len;
	char tmp;
	int i;

	if(NULL == buf) {
	    return NULL;
	}

	len = strlen(buf);

	for(i = 0; i < len/2; i++)
	{
	    tmp             =  buf[i];
	    buf[i]          =  buf[len -i -1];
	    buf[len -i -1]  =  tmp;
	}

	return buf;
}

				
时间: 2024-10-24 22:58:20

有个函数:char* reverse(char *buf)的相关文章

有个函数:逆序排列char* reverse(char *buf)

/*  *Author  : DavidLin     *Date    : 2014-12-15pm     *Email   : [email protected] or [email protected]     *world   : the city of SZ, in China     *Ver     : 000.000.001     *For     : reverse the char array/string!  *history :     editor      tim

实现 reverse(const char *s1 , char *s2)

题目: 将字符串s1的内容反转后输出到s2,比如s1="12345678",则输出s2为"87654321",实现语言选择一种即可.  C语言实现时要求不能使用包括strlen在内的任何库函数,也不能定义和使用除s1.s2以外的其它变量.使用如下原型的C函数void reverse(const char *s1, char *s2); 总结: 如果是定义的字符串常量的话,默认类型是const类型的,也就说是如果我们把字符传直接传进去,类型是const,也就是无法修改

编写一个函数char_contains(char str[],char c), 如果字符串str中包含字符c则返回数值1,否则返回数值0

/* 编写一个函数char_contains(char str[],char c), 如果字符串str中包含字符c则返回数值1,否则返回数值0 */ #include <string.h> #include <stdio.h> // 可读性 -> 性能 -> 精简(重构) int char_contains(char str[], char c); int main() { //int result = char_contains("itc8ast"

已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc),编写函数 strcpy

已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc)其中strDest 是目的字符串,strSrc 是源字符串.不调用C++/C 的字符串库函数,请编写函数 strcpy. /*编写strcpy函数(10分)已知strcpy函数的原型是??? char *strcpy(char *strDest, const char *strSrc);??? 其中strDest是目的字符串,strSrc是源字符串.(1)不调用C++/C的字

用c++语言编写函数 int index(char *s,char * t),返回字符串t在字符串s中出现的最左边的位置,如果s中没有与t匹配的子串,则返回-1。类似于索引的功能。

首先,分析一下程序的思路: 1:从s的第i个元素开始,与t中的第1个元素匹配,如果相等,则将s的第i+1元素与t中的第2个元素匹配,以此类推,如果t所有元素都匹配,则返回位置i;否则,执行2; 2: i++;如果s的第i个元素是'\0',即字符串的结束符,停止执行:否则,重复步骤1. 接着,给出这个程序: #include <iostream>                                    //存放了输入输出流#include <cstdio>      

const char* to char*(当函数传递参数时)

来自 https://blog.csdn.net/rongrongyaofeiqi/article/details/52442169 https://blog.csdn.net/hebbely/article/details/79577880 简述: 1) char*转string:可以直接赋值. 2) char[]转string:可以直接赋值. 3) char*转char[]:不能直接赋值,可以循环char*字符串逐个字符赋值,也可以使用strcpy_s等函数. 4) string转char[

C系列函数原型之-StrStr(char *str,char *subStr)的实现

思路: 1.对于字符串最后一位为'\0',可以作为临界条件 2.当*str != '\0'的时候,判断*p是否等于*q,如果相等继续后移2个指针,如果最后*q的指针到达边界,说明整个匹配是成功的,直接返回res即可.否则后移主串指针. #include <iostream> char *Mystrstr(char *str,char *subStr){ while (*str !='\0' ) { char *p = str; char *q = subStr; char *res =NULL

深入理解const char*p,char const*p,char *const p,const char **p,char const**p,char *const*p,char**const p

由于没有const*运算,const实际上修饰的是前面的char*,但不能在定义时转换写成 const(char *)*p,因为在定义是"()"是表示函数. 三.深入理解7种组合 (0)程序 在执行时为其开辟的空间皆在内存(RAM)中,而RAM里的内存单元是可读可写 的:指针只是用来指定或定位要操作的数据的工具,只是用来读写RAM里内存单元的工作指针 .若对指针不加任何限定,程序中一个指针可以指向RAM中的任意位置(除了系统敏感区,如操作系统内核所在区域)并对其指向的内存单元进行读和写

const char*, char const*, char*const使用时的区别

案例1: #include<iostream> using namespace std; void main(void) { // char* a 与 char a[] 的区别 char* a = "abcdef"; // a为一指针,其值可以改变.现在a指向的是一常量字符串 cout << a << endl; a = "ghijkl"; // a现在指向另一常量字符串 //a[0] = 'z'; // a指向的为常量,编译没问