读书笔记-《字符串》
来源:互联网 发布:肖申克的救赎影评知乎 编辑:程序博客网 时间:2024/06/06 00:01
1.字符串表示
字符串是以空字符(\0)结尾的char数组。
(1)字符串定义:
基本方法有:字符串常量、char数组、char指针和字符串数组。
1>字符串常量(静态存储类):指位于一对双引号中的任何字符。
char greeting[50]="hello world";
/*把字符串看成指针*/#includevoid main(){printf("%S %p %c\n","we","are",*"space farers");}/*输出结果:we 0X0040c010 s*/
2>字符串数组及其初始化
const char m1[10]="hello world";
const char *m1[10]={ 'h','e','l','l','o',' ','w','o','r','l','d', '\0' };m1是一个指定给定字符串的指针。
'\0' ? 字符串:字符数组
3>数组和指针的差别
声明:
char heart[]="I like cat";
char *head[]="I like dog";
主要差别在于数组名heart是个常量,指针head则是个变量。
head可以使用增量运算符;
左值原因:head=heart(允许)heart=head(不允许)
4>字符串数组
const char *mytal[5]={"hello","world","ni","hao"};
只存放字符串的地址
*mytal[0]='h',*mytal[2]='n';
char mytal_2[5][10];
存放5个完整的数组
char mytal_3[5];
与char mytal_2相比,节省空间,不规则的数组
2.指针和字符串
#includevoid main(){char *mesg="Don't be a fool!";char *copy;copy=mesg;printf("mesg=%s;&mesg=%p;value=%p\n",mesg,&mesg,mesg);printf("copy=%s;©=%p;value=%p\n",copy,©,copy);}/*输出结果mesg=Don't be a fool!;&mesg=0x0012ff48;value=0x0040a00copy=Don't be a fool!;©=0x0087ff48;value=0x0040a00copy=mesg;只是产生指向同一个字符串的第二个指针*/
阅读全文
0 0
- 读书笔记-《字符串》
- 读书笔记--字符串循环移位
- 《柔性字符串匹配》读书笔记
- C++字符串读书笔记
- Java操作字符串--读书笔记
- Java 读书笔记13 字符串
- think in java读书笔记--字符串
- Java读书笔记三(字符串)
- PHP经典实例读书笔记--字符串
- 字符串的匹配--cookbook读书笔记
- Java编程思想读书笔记——字符串
- 读书笔记--C 指针实现各项字符串操作
- MYSQL读书笔记---运算符、字符串操作
- think in java读书笔记--字符串小细节
- 《c程序设计语言》读书笔记-3.4-数字转字符串
- 字符串匹配问题 ---- 算法导论读书笔记
- C++读书笔记-字符串,vector和数组
- 读书笔记三--- Date构造函数与字符串
- 输入一个一维数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
- 关于java JDK动态代理的浅显理解
- DPM算法 原理 实验分析 PPT详解 (17年9月份小专题的整理)
- 计蒜客15 单独的数字 位运算
- 最小生成树之kruskal算法概念与实现
- 读书笔记-《字符串》
- 2017 ACM-ICPC 亚洲区(乌鲁木齐赛区)网络赛 E: Half-consecutive Numbers
- 51Nod
- servlet学习笔记-第一天
- Tyvj1998
- iOS-round、ceil、floorf函数
- 数据库编码com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'sex' at row 1
- hdu 2577 How to Type 经典 二维 dp
- 整数转化为罗马数