美文网首页
1.9字符数组

1.9字符数组

作者: Hy_Slin | 来源:发表于2016-09-15 11:05 被阅读0次

看懂这个得先看懂前面的参数——传值调用,
这里的例题我感觉就是三个小程序放在一起相互传值。
对于参数传值理解的还不够透彻,先把例题大概弄懂到后面再回来改。
被调用函数不能直接修改主调函数中变量的值,而只能修改其私有的临时副本的值。
这句话我的理解就是给你一个复印件随便玩,不要动我的原稿。
getline函数有重名的是C++的最好换个函数名。
max = 0;
while ((len = getline(line, MAXLINE)) > 0)
if (len > max) {
max = len;
copy(longest, line);
getline函数里返回的值就是getline的值,可以把getline看成饭后的那个数,括号里的是他的两个参数,第一个被声明成字符数组,第二个是一个常量。限制最长的长度的。
然后把getline返回的值赋给len,下面就是找出最长的输入行了。copy是执行一个动作就是把字符数组line复制给longest。每找到一个比max长的都要进行复制,所以最后留下的就是最长的。
int getline(char s[],int lim)
这个s[]和lim直接看做是上面getline的括号里line和MAXLINE得副本就可以了,值是一样的。
i < lim - 1;
这是因为数组下标是从0开始的,lim定义的是1000是从1开始数的。所以下标0就是1、1就是2,所以到1000的时候是下标是999,
所以要定义的长度-1,而999的留给最后一个字符‘\0’的,。
这里我有个不懂得地方就是最后一个留给‘\0’那换行符在哪?读取到第998个元素还还是没有换行符最后一个就要留给‘\0’了就没有换行符了。
copy里的to[]和form[]可以看做是就是把字符数组line复制给字符数组longest。
后面的那几个练习看完我就出头了。。。

相关文章

  • 1.9字符数组

    看懂这个得先看懂前面的参数——传值调用,这里的例题我感觉就是三个小程序放在一起相互传值。对于参数传值理解的还不够透...

  • 字符串与字符

    在jdk1.9之前,所有的string都利用了字符数组实现了包装的处理,所以在String类里面是提供有专门的转化...

  • C语言-字符数组

    用来存放字符量的数组称为字符数组。 1 字符数组的定义 1. 字符数组的定义 字符数组的定义和整型数组的定义是相同...

  • 2017年9月15日 学习报告

    今天学习了字符数组,用来存放字符数据的数组就是字符数组。字符数组中的一个元素存放一个字符。定义字符数组的方...

  • JS基础09-17

    数组面向对象创建 直接创建 数组嵌套 数组字符拼接 数组去重 字符串字符串翻转/字符串翻转---线分割数组,翻转,...

  • Swift string to array array to

    数组与字符串转换 Swift 字符串转数组: Swift 数组转字符串:

  • C++ 学习笔记之——字符串和字符串流

    1. 字符数组 字符数组,也就是存放字符类型数据的数组,只不过字符数组的结尾必须是 '\0'。C++ 已经提供了一...

  • Swift数组和字符串相互转换(更新至Swift 4.0)

    Swift 4.0 数组转字符串 Swift 2.0 字符串转数组 数组转字符串

  • JavaScript字符串对象与Date

    指用来存放字符的数组,字符数组的定义:用来存放字符量的数组称为字符数组。 当我们在使用字符串时,可以直接用基本类型...

  • Redis源码

    一、Redis数据结构: SDS SDS(动态字符串)包含字符数组buf[],字符数组现有长度len,字符数组分配...

网友评论

      本文标题:1.9字符数组

      本文链接:https://www.haomeiwen.com/subject/etpmettx.html