【C语言】-指针和字符串

说明:这个C语言专题,是学习iOS开发的前奏。也为了让有面向对象语言开发经验的程序员,能够快速上手C语言。如果你还没有编程经验,或者对C语言、iOS开发不感兴趣,请忽略

字符串回顾

一个字符串由一个或多个字符组成,因此我们可以用字符数组来存放字符串,不过在数组的尾部要加上一个空字符' '。

char s[] = "mj";

上面的代码定义了一个字符数组s来存储字符串"mj",系统会自动在尾部加上一个空字符' '。

内存分布大致如右图所示:【C语言】-指针和字符串

 

从上一篇文章《十二、指向一维数组元素的指针》中可以看出指针和数组的关系非常密切,因此我们也可以使用指针来操作字符串。

一、用指针遍历字符串的所有字符

【C语言】-指针和字符串
 1 // 定义一个指针p
 2 char *p;
 3
 4 // 定义一个数组s存放字符串
 5 char s[] = "mj";
 6
 7 // 指针p指向字符串的首字符'm'
 8 p = s; // 或者 p = &s[0];
 9
10 for (; *p != '