数组与指针(1)

数组

1.二维数组定义的一般形式为:
类型说明符 数组名[常量表达式][常量表达式];
如:定义a为3×4(3行4列)的数组,b为5×10(5行10列)的数组
float a[3][4],b[5][10];
2.字符串和字符串结束标志:
为了测定字符串的实际长度,C语言规定了一个“字符串结束标志”——‘\0’。

3.字符数组的输入输出可以有两种方法:
逐个字符输入输出。用格式符“%c”输入或输出一个字符。
将整个字符串一次输入或输出。用“%s”格式符,意思是对字符串的输入输出。
(1)用“%s”格式符输出字符串时,printf函数中的输出项是字符数组名,而不是数组元素名。
(2)如果数组长度大于字符串实际长度,也只输出到遇′\0′结束。
(3)输出字符不包括结束符′\0′。
(4)如果一个字符数组中包含一个以上′\0′,则遇第一个′\0′时输出就结束。
(5)可以用scanf函数输入一个字符串。

4.字符串处理函数
(1)puts函数
其一般形式为: puts (字符数组)
其作用是将一个字符串(以′\0′结束的字符序列)输出到终端。

用puts函数输出的字符串中可以包含转义字符。
例如:
char str[]={″China\nBeijing″};
puts(str);
输出结果:
China
Beijing
(2)gets函数
其一般形式为:gets(字符数组)
其作用是从终端输入一个字符串到字符数组,并且得到一个函数值。

(3)strcat函数
其一般形式为:strcat(字符数组1,字符数组2)
Strcat的作用是连接两个字符数组中的字符串,把字符串2接到字符串1的后面,结果放在字符数组1中。

(4)strcpy函数
其一般形式为:strcpy(字符数组1,字符串2) strcpy是“字符串复制函数”。
作用:是将字符串2复制到字符数组1中去。
(1)字符数组1必须定义得足够大,以便容纳被复制的字符串。字符数组1的长度不应小于字符串2的长度。
(2)“字符数组1”必须写成数组名形式,“字符串2”可以是字符数组名,也可以是一个字符串常量。
(3)复制时连同字符串后面的′\0′一起复制到字符数组1中。
(4)可以用strncpy函数将字符串2中前面若干个字符复制到字符数组1中去。
(5)不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。

(5)strcmp函数
其一般形式为:strcmp(字符串1,字符串2)
strcmp的作用是比较字符串1和字符串2。
比较的结果由函数值带回
(1) 如果字符串1=字符串2,函数值为0。
(2) 如果字符串1>字符串2,函数值为一正整数。
(3) 如果字符串1<字符串2,函数值为一负整数。
(6)strlen函数
其一般形式为: strlen (字符数组)
strlen是测试字符串长度的函数。函数的值为字符串中的实际长度(不包括′\0′在内)。

5.形参与实参
形式参数:定义函数时函数名后面括号中的变量名
实际参数:调用函数时函数名后面括号中的表达式

6.参数传递
值传递方式方式:
函数调用时,为形参分配单元,并将实参的值复制到形参中;调用结束,形参单元被释放,实参单元仍保留并维持原值;
特点:形参与实参占用不同的内存单元; 单向传递
地址传递方式:
函数调用时,将数据的存储地址作为参数传递给形参
特点:形参与实参占用同样的存储单元;“双向”传递;实参和形参必须是地址常量或变量;

7.用static声明局部变量:函数中的局部变量的值在函数调用结束后不消失而保留原值,以便下一次调用该函数时可以使用上一次调用的最后结果。这时就应该指定该局部变量为“静态局部变量”。
用extern声明外部变量:外部变量(即全局变量)是在函数的外部定义的,它的作用域为从变量的定义处开始,到本程序文件的末尾。在此作用域内,全局变量可以为程序中各个函数所引用。
用static声明外部变量:外部变量只限于被本文件引用,而不能被其它文件引用,可以在定义外部变量时加一个static声明。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值