程序示例

// talkback.c --演示与用户交互
#include<stdio.h>
#include<string.h>
#define DENSITY 62.4//人体密度
int main( )
{float weight,volume;int size,letters;char name[40];//name是一个可容纳40个字符的数组printf("Hi!What's your first name?\n");scanf("%s,what's your weight in pounds?\n",name);printf("%f",&weight);size = sizeof(name);letters = strlen(name);volume = weight / DENSITY;printf("Well,%s,your volume is %2.2f cubic feet.\n",name,volume);printf("Also,your first name has %d letters,\n",letters);printf("and we have %d bytes to store it.\n",size);return 0;}

字符串简介

char类型数组和null字符

  • 由于C语言中没有专门储存字符串的变量类型,所以字符串都被储存在char类型的数组中,注意点是在每一个字符串的末尾字符==\0==,是非打印字符,即空字符(null character)。
  • 数组是同类型数据元素的有序序列。

strlen( )函数

可以计算字符串长度的一个函数,需要注意的是它和size of的区别,size of会将空字符算在字符长度中,而strlen()函数则不会。

C预处理器

预处理指令在程序开始编译前便处理它们

#define

宏定义的用法:#define PI 3.1415926

const限定符

只限定于一个变量为只读,相较#define,更加灵活

printf()和scanf()

printf()函数

  • 打印数据的指令要和待打印数据类型相匹配
  • 打印较长的字符串时可以使用到转义字符来使得代码更加具有可读性

scanf()函数

  • 如果使用scanf()读取基本变量类型的值,在变量名前加一个&。
  • 如果scanf()把字符串读入字符数组中,不要使用&。

转换说明

printf()函数和scanf()函数都可以通过转换说明来控制输出的外观:字段宽度。小数位和字段内的布局。

关键概念

  1. 使用#define来定义数值常量(例如pi)
  2. 使用const来定义只读变量
  3. 对于scanf()函数来讲,一定要确保在变量名前加上取地址符&

重读《C primer plus》(四)相关推荐

  1. 从《C++ Primer 第四版》入手学习 C++

    从<C++ Primer 第四版>入手学习 C++ 为什么要学习C++? 2009 年本书作者 Stan Lippman 先生来华参加上海祝成科技举办的C++技术大会,他表示人们现在还用C ...

  2. C++ Primer 第四章

    C++ Primer 第四章&第五章 2021.7.14 4.1 基础 使用关键字decltype时,若表达式求值结果为lvalue,则得到一个引用类型 int *p; int t; decl ...

  3. C++ Primer 第四版电子书pdf下载

    C++ Primer 第四版电子书pdf下载链接: https://pan.baidu.com/s/1oJtK68nsjjKufJMlin1Rxg 提取码获取方式:关注下面微信公众号,回复关键字:11 ...

  4. C++ Primer第四版(中文版) pdf下载

    编辑推荐 <C++ Primer中文版(第4版)>对C++基本概念和技术全面而且权威的阐述,对现代C++编程风格的强调,使<C++ Primer中文版(第4版)>成为C++初学 ...

  5. C++_系列自学课程_第_9_课_C语言风格字符串_《C++ Primer 第四版》

    前面说了写关于数组和指针的内容,这次在这里讨论一下字符串,讨论一下C语言风格的字符串. 在C语言里面我们利用字符数组来对字符串进行处理, 在C++里面我们前面说过一种类类型string可以对字符串进行 ...

  6. c++ primer第四版上的内容质疑

    期中a2 = {0};指示的是错误的,不能将一个花括号列表赋予数组.但是对于现在g++编译器确可以: #include <iostream> #include <string> ...

  7. C++primer 第四版6.12:练习题

    /*编写一个小程序,从标准输入读入一系列 string 对象, 6.12: 寻找连续重复出现的单词.程序应该找出满足以下条件的 单词的输入位置:该单词的后面紧跟着再次出现自己本 身.跟踪重复次数最多的 ...

  8. C++Primer第四版 阅读笔记 第二部分 “容器和算法”

    泛型算法中,所谓"泛型(generic)"指的是两个方面:这些算法可作用于各种不同的容器类型,而这些容器又可以容纳多种不同类型的元素. 第九章 顺序容器 顺序容器的元素排列次序与元 ...

  9. C++Primer第5版学习笔记(一)

    C++Primer第5版学习笔记(一) 第一.二章的重难点内容        这个笔记本主要记录了我在学习C++Primer(第5版,中文版)的过程中遇到的重难点及其分析.因为第一.二章都比较简单,因 ...

  10. C++ Primer读书摘要(一)

    C++ Primer 第一章 快速入门 1.1 编写简单的C++程序 任何一个都要包含一个main函数,因为这个函数是系统执行入口c++也一样,函数格式是 int main(); 和别的主要函数不同C ...

最新文章

  1. android webview单向认证,android 让webview支持自签名证书https 双向认证(SSL)
  2. BroadcastReceiver应用详解(一)
  3. 五款软件快速解决网络故障问题
  4. 从List分组后重新组织数据
  5. 数据库:MySQL、HBase、ElasticSearch三者对比
  6. 【02】Kubernets:使用 kubeadm 部署 K8S 集群
  7. 拼多多、微博等在新一轮经济变化中将做出更大贡献
  8. pycharm自定义代码段
  9. 超生动图解LSTM和GPU:拯救循环神经网络的记忆障碍就靠它们了!
  10. Linux的基础命令和配置文件
  11. ELK详解(四)——Head插件安装
  12. YOLOV5学习记录
  13. Excel2016 折线图
  14. matlab 超分辨率,matlab超分辨率
  15. qiankun前端微服务框架-同一服务器同一端口
  16. 【学会轮播图这一篇文章就足够啦】JS 网页轮播图详解 自动播放+手动播放
  17. 【Statistics】HYPOTHESIS TEST(SIGNIFICANCE TEST)
  18. python - 模块解析
  19. 多个独立索引和联合索引的选择
  20. 分享qq,wx,qqZone,weibo基于vue

热门文章

  1. 模拟声浪音源格式转换
  2. <Principles of fMRI 1>课程笔记7 K空间
  3. 在Ubuntu18.04中安装wps并且解决文字字体缺失的问题
  4. 机器人波波熊_紫葡萄路灯
  5. 【面试真经】Linux运维面试之内核优化
  6. [从零开始]用python制作识图翻译器·五
  7. 处理音视频合并的简单方法
  8. xjar加密后运行错误_Python中的错误和异常
  9. Exchange 学习笔记
  10. 平面设计师版式设计细节哪些要重视?