字符串copy推导演变
#include <stdio.h>
#include<string.h>
/*基本水平*/
void mycopy1(char *des,char * sou)
{
unsigned int i;
for ( i = ; i < strlen(sou); i++)
{
des[i] = sou[i];
}
des[i] = '\0';//加上结束符
} /*初级水平*/
void mycopy2(char *des, char * sou)
{
while (*sou != '\0')
{
*des++ = *sou++;
}
*des = '\0';//同样加上结束符
} /*中级水平*/
void mycopy3(char *des, char * sou)
{
while( (*des++ =*sou++)!='\0')
{ }
//*des = '\0';//不再需要这句话
}
/*高级水平*/
void mycopy4(char *des, char * sou)
{
while (*des++ = *sou++)
{ }
//*des = '\0';//不再需要这句话
}
/*
注意,这里要求sou指针指向的是以'\0'结尾的字符串,如果都是字符数组,则不行,当然你也可以在
字符数组尾部加上'\0',让它成为一个判断标志
这个主要是锻炼思维,第四中情况,将在《c和指针》上看到应用,后续举例
*/
int main(void)
{
char str[] = "abcdef";
char str1[]; mycopy1(str1,str);
printf("str1=%s\n", str1); mycopy2(str1, str);
printf("str1=%s\n", str1); mycopy3(str1, str);
printf("str1=%s\n", str1); mycopy4(str1, str);
printf("str1=%s\n", str1);
return ;
}
字符串copy推导演变的更多相关文章
- 字符串copy
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string. ...
- C++ 拆分字符串-copy()
c++拆分字符串方法: #include <iostream>#include <string>#include <sstream>#include <alg ...
- C语言字符串操作总结大全
1)字符串操作 strcpy(p, p1) 复制字符串 函数原型strncpy(p, p1, n) 复制指定长度字符串 函数原型strcat(p, p1) 附加字符串 函数原型strn ...
- C语言字符串操作总结大全(超详细)
本篇文章是对C语言字符串操作进行了详细的总结分析,需要的朋友参考下 1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat( ...
- c语言的字符串操作(比较详细)
1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度 ...
- Windows内核下操作字符串!
* Windows内核下操作字符串! */ #include <ntddk.h> #include <ntstrsafe.h> #define BUFFER_SIZE 1024 ...
- C++ Strings(字符串)
Constructors 构造函数,用于字符串初始化 Operators 操作符,用于字符串比较和赋值 append() 在字符串的末尾添加文本 assign() 为字符串赋新值 at() 按给定索引 ...
- C语言字符串操作函数集
1)字符串操作 strcpy(p, p1) 复制字符串 strncpy(p, p1, n) 复制指定长度字符串 strcat(p, p1) 附加字符串 strncat(p, p1, n) 附加指定长度 ...
- Go 字符串连接+=与strings.Join性能对比
Go字符串连接 对于字符串的连接大致有两种方式: 1.通过+号连接 func StrPlus1(a []string) string { var s, sep string for i := 0; i ...
随机推荐
- plsql 常用快捷键(自动替换)
plsql 常用快捷键 CreateTime--2018年4月23日17:33:05 Author:Marydon 说明:这里的快捷键,不同于以往的快捷键,输入指定字符,按快捷键,可以自动替换成你 ...
- HDU 5402 Travelling Salesman Problem(棋盘染色 构造 多校啊)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5402 Problem Description Teacher Mai is in a maze wit ...
- import 导包三种方法
# -*- coding: utf-8 -*- #python 27 #xiaodeng #导包三种方法 #(常用)完整的导入,也是最基本的方法 import re #自己定义别名,一般情况下尽量少用 ...
- LEGO机器人发展史
1998,cybermaster 1999,RCX 1999,micro scout 2000,scout 2002,spybotics NXT NXT2 EV3
- HDUOJ----Eddy's research I
Eddy's research I Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- JNI入门
JNI是Java Native Interface的缩写,Native指C/C++. JNI内容涉及两个方面: Java调用C,这种情况是最主要的 C调用Java,这种情况不常见 第一步:编写Java ...
- Linux vi命令大全
http://www.cnblogs.com/88999660/articles/1581524.html一.Unix编辑器概述 编辑器是使用计算机的重要工具之一,在各种操作系统中,编辑器都是必不可少 ...
- 从使用 KVO 监听 readonly 属性说起
01.KVO 原理 KVO 是 key-value observing 的简写,它的原理大致是: 1.当一个 object(对象) 有观察者时候,动态创建这个 object(对象) 的类的子类(以 N ...
- regular expression 练习
练习有一个文件,文件名为output_1981.10.21.txt .下面使用Python: 读取文件名中的日期时间信息,并找出这一天是周几.将文件改名为output_YYYY-MM-DD-W.txt ...
- 最常用的五类CSS选择器
一些新手朋友对选择器一知半解,不知道在什么情况下运用什么样的选择器,这是一个比较头疼的问题,针对新手朋友,对CSS选择器作一些简单的说明,希望能对大家的学习工作有一定的帮助,更多的CSS知识请参考We ...