C Primer Plus汇总

额,入门级的,收集我在学这本书时犯的一些小问题,和一些容易被忽略的东西。

同时对发明出笔记本触摸板的那位前辈表示鄙视之情。

鄙人比较笨以前犯的问题比较多,我整理的比较慢。。。。。。。。。。。

我会在复习c primer plus的同时完成,同时为下一步深入学习C语言和学习数据结构做准备 

第4章 

1、

printf()把%f,%e,%E,%g,%G.同时用于float类型和double类型

而scanf()只把它们用于float类型,而用于double类型时要求使用“l”(L)修饰符

78页页尾

scanf最大字段宽度可限制输入

scanf修饰符: digit(s)最大字段宽度;在达到最大字段宽度或者遇到第一个空白字符时(不管哪一个先发生都一样)

停止对输入项的读取

示例:“%10s”

79页 表4.7 页中

3、

在scanf中*提示截然不同的服务。当把它放在%和说明符字母之间时它使函数跳过相应的输入

项目。程序清单4.17提供了一个示例。

/* skip2.c -- 跳过输入的头两个整数 */
#include <stdio.h>
int main (void)
{
    int n;
    
    printf ("Please enter three integers: \n");
    scanf ("%*d %*d %d", &n);
   printf ("The last integer was %d\n", n); 
   return 0; 
} 

输出

Please enter three integers

2004 2005 2006

The last integer was 2006

82页首

4、

在两个转换说明符之间放一个空白字符,可以确保即使一个数字溢出了自己的字段,它也不会闯入下一个数字一起输出。

这是因为控制字符串中的常规字符(包括空格)会被打印出来。

82页 页尾偏上

原文地址:https://www.cnblogs.com/zero5/p/2602327.html