zoukankan      html  css  js  c++  java
  • C语言第三次作业

    一、学习动态内存分配、字符串操作、字符串函数的实现

     1.1 观看1.2.2,1.3.1,1.3.2,1.4视频

     1.2 观看视频记录纸质的笔记  

     

     

     1.3 观看视频时所敲打的代码文件

    展示内存

     

    1.4 学习中存在的问题

    (1)指针p被free之后变成了什么值,还有值吗?

       答:地址是不可能被删掉的,free只是告诉系统,这块内存不需要了,系统可以拿来做别

              的事,这块内存被释放之后暂时还没有其他程序访问这块内存,所以之前的数据还在,

              读也能读出来。

    (2)Ctrl+Z和Ctrl+D结束运行那里不太懂。

      答:通过查询Ctrl+Z是把当前的程序挂起,暂停执行这个程序。Ctrl-D表示一个特殊的二进制值,

             表示EOF,作用相当于在终端中输入exit后回车。键盘输入字符,通过shell传给电脑内部做

             运算,敲下回车后程序仍未结束,当输入 Ctrl + Z 或 Ctrl + D时相当于文件结束符(EOF),

             shell拦截并做对应处理。

    (3)程序参数int main(int argc, char * argv[])?

       答:百度查询。  argc: 代表启动程序时,命令行参数的个数,且argc的值至少是1。

              argv[]:指针数组,其中的每个元素都是一个char* 类型的指针,该指针指向一个字符串,

              这个字符串里就存放着命令行参数。

    二、pta作业问题

    1、单选题

    2-1

    以下不正确的赋值或赋初值的方式是( )。 (2分)

    正确答案:应选C。    给string类型赋值字符串,默认字符串结尾有'赋值时可写 入。

    C:str是一个数组,写入程序也是该数组首地址,str是一个指针常量,不能被赋值。

    2-2

    假设scanf语句执行时输入ABCDE<回车>,能使puts(s)语句正确输出ABCDE字符串的程序段是__。 (2分)

    解释:A和B中字符的定义都是字符数组的形式,并不是字符串,puts函数输出字符串专用,遇

              到‘’停止输出,找不到就一直输出。C选项没有对指针s赋值,却对s指向的单元赋值,

              针的值是不确定的。

    2-3

    下面描述正确的是 (2分)

    为什么字符串“That”小于字符串“The”?

    答:因为比较是按顺序的,第一个都是T,第二个都是h,第三个a<e,所以“That”<“The”,

           比较方法就是挨个比较,利用ASC码。

  • 相关阅读:
    与eolinker api集成
    为什么要用eolinker帮助API开发
    什么是Eolinekr
    使用Eolinker加快您的API开发
    java反射
    mybatis-查询过程
    mybatis初始化过程
    mybatis的插件分析
    web.xml中的ContextLoaderListener和DispatcherServlet区别
    css+js杂记
  • 原文地址:https://www.cnblogs.com/YRY-/p/12500297.html
Copyright © 2011-2022 走看看