C语言复习10

C语言复习10

C语言学习,在这里推荐浙江大学翁恺老师的视频,慕课网网址:https://www.icourse163.org/learn/ZJU-9001?tid=9001#/learn/content。笔者的复习笔记也主要是根据该视频进行。本文的主要内容如下

  • 程序设计与C语言
  • 计算
  • 判断
  • 循环
  • 循环控制
  • 数据类型
  • 函数
  • 数组
  • 指针
  • 字符串
    字符串;字符串函数;上机10;
  • 结构类型
  • 程序设计
  • 文件
  • 链表

refer
1.


10.1 字符串

一、字符数组

字符数组和字符串不同,字符数组就是以char的数组实现的,其结尾不需要加'\0'举例如下:
在这里插入图片描述

二、字符串

而字符串的结尾需要加'\0',字符数组的长度增加了一字节,如下:
在这里插入图片描述

在string.h的文件内有很多处理字符串的函数。在这里需要注意的是字符串和字符数组的索引都是从0开始的。

字符串变量的常见书写方法有以下几种:

char str[] 	= {'1', '\0'};	
char *str 	= "1";			// 指针形式,最常见的形式1
char str[] 	= "1";			// 数组形式,最常见的形式2
char str[2] = "1";

C中,字符串的是以字符数组的形态存在的,但是仍然存在区别。需要注意的是char *str = "1";是一个const char *str类型,通过指针不能修改,所以如果创建需要修改的字符串,应该创建字符数组char s[] = "1";

那么何时用指针,何时用数组呢?如果要构造一个字符串用数组(需要改变内容),如果要处理一个字符串用指针(不需要改变内容)。

三、字符串的输入输出

除了整型和浮点型,字符串属于新的类型。他的输入输出也不同。输入输出需要用到"%s"。例如:
在这里插入图片描述
在这里插入图片描述

四、字符串数组

在这里插入图片描述
有时候我们需要使用多种字符串,可以使用的声明方式有:

char  *a[];		// a是一个一维数组,其中每一个a[n]都是一个char *字符串,即通过指针不能更改的字符数组

看char *a[]时候,可以先把[]忽略不看,这样比较好理解。

五、程序参数

我们需要注意的是:

char *str <==> const char *str				// char *字符串是通过指针不能修改的字符数组
char const *argv[] <==> const char *argv[]	// 通过指针不能修改(const写前写后无所谓)
char * const argv[];						// 指针不能修改(const用于修饰变量)

回到main函数,我们能看到main函数的完整构造是
int main(int argc, char const *argv[])。其中argc是argument count缩写,argv是argument value的缩写,即运行程序的参数。例子如下:
在这里插入图片描述

10.2 字符串函数

我们需要了解两个常用的字符输出/输出函数putchar和getchar。
在这里插入图片描述
在这里插入图片描述
Unix的terminal中,停止输入是ctrl+d,终止程序是ctrl+z

字符串函数存在于string.h中。
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值