字符串_字符串的复制
字符串:
以" "号包括的字符序列,带'\0'
字符串的结尾标记'\0'
只要末尾为'\0'的都是字符串
定义字符数组:
#include <stdio.h>
int main()
{
char arr[10] = {'a','b','c'};//定义一个字符数组,将字符a,字符b,字符c赋给前三个字符,其余均为'\0',该数组是字符串
char brr[] = {'a','b','c'};//定义一个字符数组,未规定大小,将字符a,字符b,字符c赋值给字符数组,该数组不是字符串
char crr[10] = {"abc"};//字符数组特有
char drr[10] = "abc"; //字符数组特有 **
char err[] = "abc"; //字符数组特有 **
char frr[10] = ""; //定义一个包含10个char类型的字符数组,未初始化
return 0;
}
字符串的输出操作:
void Print(char *str)
{
for(int i=0;str[i]!='\0';i++)
{
putchar(str[i]);
}
}
int main()
{
char arr[10] = "abc";
char brr[10] = "";
Print(arr);
printf("%s\n",arr);
return 0;
}
//希望字符串可进行的操作:1、复制,2、连接,3、比较
字符串的复制:
void Copy1(char *des,char *src)
{
int i;
for(i=0;src[i]!='\0';i++)
{
des[i] = src[i];
}
des[i] = '\0';
}
void Copy2(char *des,char *src)
{
int i;
for(i=0;*(src+i)!='\0';i++)
{
*(des+i) = *(src+i);
}
*(des+i) = '\0';
}
void Copy3(char *des,char *src)
{
while(*src != '\0')
{
*des = *src;
des++;
src++;
}
*des = '\0';
}
void Copy4(char *des,char *src)
{
assert(des!=NULL && src!=NULL);//
if(des==NULL || src==NULL)
{
return ;
}
while(*src != '\0')
{
*des++ = *src++;//*(des++) = *(src++);
//(*des)++ = (*src)++;//error
}
*des = '\0';
}
char *Copy(char *des,char *src)
{
char *p = des;
while(*des++ = *src++) ;
return p;
}
//父函数调用子函数,从而改变父函数的值,需要传指针,解引用
int main()
{
char arr[10] = "abc";
char brr[10] = "";
char crr[10];
Copy1(crr,arr);
Copy2(crr,arr);
Copy3(crr,arr);
Copy4(crr,arr);
Copy(crr,arr);
Copy(crr,Copy(brr,arr))
printf("%s\n",crr);
return 0;
}
字符串_字符串的复制相关推荐
- 判断字符串是否为回文字符串_字符串文字
判断字符串是否为回文字符串 String objects hold ordered sequences of bytes, typically characters, usually to form ...
- 字符内存转成字符串_字符串内存内部
字符内存转成字符串 本文基于我对StackOverflow的回答 . 我正在尝试解释String类如何存储文本,内部存储和常量池如何工作. 这里要理解的要点是String Java对象与其内容– pr ...
- sql server 替换有反斜杠的字符串_字符串提取,到底谁是你的菜?
字符串提取,是表亲们经常遇到的问题,今天就和大家一起学习字符串提取的方法. 如下图所示,要从A列的路径中提取出文件名称. 提取的结果如下图所示: 观察这些数据,咱们可以发现: A列字符串中都是以&qu ...
- android 数组赋值字符串_字符串数组的赋值
例如: main() { chars[30]; strcpy(s,"Good News!"); /*给数组赋字符串*/ } 上面程序在编译时,遇到chars[30]这条语句时,编译 ...
- .net mvc actionresult 返回字符串_字符串游戏之无效的身份证
出场人物介绍 小美:小学4年级学生,参加了学校的编程兴趣小组,已经了解了Python语言的基本语法,能够看懂一些简单的程序.她做事风风火火,对所有的事情都很好奇,喜欢打破砂锅问到底,是一个叫人又爱又恨 ...
- 字符串_字符串数组_字符_字符数组
1.字符串 由String类型定义的变量,一个变量代表一个字符串 String str="12345679"; 做题时,遇到输入为一字符串,需要对其进行分割操作时,将字符串各个字符 ...
- char截取字符串_字符串的排列(滑动窗口)
题目: 给定两个字符串 s1 和 s2,写一个函数来判断 s2 是否包含 s1 的排列. 换句话说,第一个字符串的排列之一是第二个字符串的子串. 示例1: 输入: s1 = "ab" ...
- Net基础篇_学习笔记_第十二天_面向对象继承(字符串_字符串的不可变性)
字符串的特点之一: 字符串的不可变性 1).字符串的不可变性 当你给一个字符串重新赋值之后,老值并没有销毁,而是重新开辟一块空间存储新值. 当程序结束后,GC扫描整个内存,如果发现有的空间没有被指向, ...
- 怎样在vs中监视char*字符串_字符串指针数据类型
一.前言 在实际开发中,特别是芯片开发中,例如智能传感器芯片,经常直接使用C语言指针数据类型来操作寄存器.那么字符串指针就是我们常见的操作. C语言没有单独的字符串对象,它是通过数组的形式来表示字符串 ...
最新文章
- R语言使用igraph包进行网络(network)可视化实战
- simulink中mask设置_Mask Editor 概述
- 《深入Python》-11. HTTP Web 服务
- C++ 实现 STL 标准库和算法(二)template 编程和迭代器粗解 实验楼笔记
- vivaldi浏览器_上网高阶用户怎么能少了这3个无广告、安全免费的浏览器呢
- 聚类算法之DBScan(Java实现)[转]
- centos linux 系统日常管理4 scp,rsync,md5sum,sha1sum,strace ,find Rsync 常见错误及解决方法 第十七节课...
- php+tp框架+API,【路由】利用Thinkphp路由实现API开发版本管理
- matlab没有找到图形用户界面,MATLAB中不能设计图形用户界面。
- 编译安装-httpd-2.2.15.tar.gz
- 第4章 批处理中的变量
- 服务器android打包,Android rom解包打包工具
- python 灰度图像素灰度值求和_如何在python中更改灰度图像中特定类型的像素值?...
- 电脑运行c语言时错误,电脑出现microsoft visual c++ runtime error 解决方法(多图)
- 怎样设置公众号自动回复
- 华东理工大学考研计算机难度,华东理工大学(专业学位)计算机技术考研难吗
- 【BZOJ1135】[POI2009]Lyz 线段树
- python学习之自动化运维(一):shell的使用
- 地方征信平台第2讲:河北省征信
- 网游中针对网络延迟的优化
热门文章
- 人脸识别之目标追踪识别
- RFID服装资产管理-新导智能
- GPT分区安装Linux双系统,UEFI+GPT双硬盘安装Win10+Ubuntu16.04双系统
- 青蛙跳台阶c语言递归函数,【递归】青蛙跳台阶问题
- web(html运行)设置字体大小、样式及字体名称
- 在IntelliJ IDEA中,开发一个摸鱼看书插件
- 如何使用left join,以及left join的分析
- 学习Three.js——后期处理(EffectComposer)
- 2.线性回归,梯度下降与正规方程
- PLGA-PEG-MAL +多肽A+多肽B+DOX;PLGA-PEG-MAL +DOX