zoukankan      html  css  js  c++  java
  • C Primer Plus note3

    上面的源代码为什么输入q的时候,程序就会退出呢?

    while(条件语句),status == 1是条件语句,status只要是非0值的时候,status == 1的条件就满足,程序就会运行while循环中的块。

          根据scanf()函数读取输入的规则知道,"%ld"是要读取一个长整型的数据,所以scanf()函数希望发现一个数字字符或者是一个符号(+或-),如果找到一个数字或字符,它便保存该字符,再读取下一个字符,一直读取4个字符(我编译器的ld长整型是4个字节)为止。如果scanf()函数在读取这四个字符之内碰到了非数字字符或非符号的字符,那么它会停止读取。把之前读取到的字符赋给变量。这个解释可以查看《C Primer Plus 第六版 中文版》书上详细介绍了scanf()函数读取字符的规则,在书94页的标题1.从scanf()角度看输入 这一段中。有兴趣的可以找电子书读一下。

          为什么输入q,status就等于0呢?

    因为scanf()函数没有读取到数字字符或者符号(+或-),所以返回一个0值。《C Primer Plus 第六版 中文版》书95页的标题3.scanf()的返回值 这一段有详细介绍

  • 相关阅读:
    ES6入门详解(二) 解构赋值
    python 入门简述
    webpack4x 简述
    ES6入门详解(一) let const
    关于HTML的简述
    按照in条件排序
    Oracle 优化效率
    input输入框校验
    <a>标签操作
    svn安装
  • 原文地址:https://www.cnblogs.com/lanshanxiao/p/5971129.html
Copyright © 2011-2022 走看看