连续两天没写了,今天继续!

sizeof 对象 或 sizeof (类型名)

返回一个整型值,等于指定对象或类型占用的存储空间字节数。(返回值是无符号整型值,其类型为size_t,在头文件<stddef.h>中定义)。对象可以是变量、数组或结构;类型可以是基本类型int、double等,也可以是派生类型,如结构类型或指针类型。

类型定义:提高程序的可移植性。

  typedef int Length;  //将Length定义为与int具有同等意义的名字

  Length len;

联合:在不同时刻保存不同类型和长度的对象的变量,编译器负责跟踪对象的长度和对齐要求。

1 union u_tag{
2     int ival;
3     float fval;
4     char *sval;
5 } u;

访问联合中的成员:

  联合名.成员   //u.ival

或 联合名->成员  //u->ival 

联合只能用第一个成员类型的值进行初始化,上例联合u只能作整数值进行初始化。

位字段

将多个对象保存在一个机器字中:使用类似于编译器符号表的单个二进制位标志集合。

1 #define KEYWORD        01
2 #define EXTERNAL     02
3 #define    STATIC         04
4 或enum{KEYWORD = 01, EXTERNAL = 02, STATIC = 04};

位字段(bit-field)简称字符,是“字”中相邻位的集合,“字”(word)是单个的存储单元,与具体的实现有关。

 1 #include <stdio.h>
 2 struct{
 3     unsigned int is_keyword : 1;    //冒号后的数字表示字段的宽度(用二进制位表示)
 4     unsigned int is_extern  : 1;
 5     unsigned int is_static  : 1;
 6 } flags;
 7 main(){
 8     printf("%d\n", flags.is_keyword);    //0
 9     flags.is_keyword = 1;
10     printf("%d\n", flags.is_keyword);    //1
11 }

输入与输出

int getchar(void)  //返回下一个输入字符,到文件结尾,返回EOF。符号常量EOF在头文件<stdio.h>中定义,其值一般为-1,但在程序中应该使用EOF来判断文件是否结束,这样能保证程序同EOF的特定值无关。

prog < infile  //从输入文件(非键盘)中读取字符

int putchar(int)  //输出字符,如发生错误,则返回EOF

prog > outfile  //将标准输出设备重定向到文件中,如系统支持管道,命令行可写成:prog | outfile

printf     //格式化输出,调试时用的最多了

sprintf    //将输出结果存在到String中

scanf    //格式化输入  

1 #include <stdio.h>
2 main(){
3     double sum, v;
4     sum = 0;
5     while(scanf("%lf", &v) == 1){
6         printf("\t%.2f\n", sum+=v);
7     }
8     return 0;
9 }

标准库

 1 <stdio.h>  输入与输入
 2 <ctype.h>  字符类别检测
 3 <string.h>  字符串
 4 <math.h>  数学
 5 <stdlib.h>  一些实用函数
 6 <assert.h>  诊断
 7 <stdarg.h>  可变参数表
 8 <setjmp.h>  非局部跳转
 9 <signal>    信号
10 <time.h>    日期、时间

学到最后,往往有点敷衍了事了。

就这样一本书,基本翻完了。回想自己翻过的东西,基本上已忘记了。

基础就先打到这,接下来是算法的学习,学以致用!

  

原文作者:lltong,博客园地址:http://www.cnblogs.com/lltong/

转载于:https://www.cnblogs.com/lltong/p/3399492.html

重拾C,一天一点点_12相关推荐

  1. 【8.9】重拾编程之心 Java基础

    自毕业以来,一年又一个月,初出社会,浮浮沉沉. 但是心里还是有那个想法:要么做程序猿,做么创业. ------------------------------------------------ 且行 ...

  2. CSS魔法堂:重拾Border之——图片作边框

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  3. 重拾-Spring Transaction

    问题 面试中是不是有时经常会被问到 "Spring 事务如何管理的了解吗?" ,"Spring 事务的传播性有哪些,能聊聊它们的使用场景吗?", "事 ...

  4. 重拾算法(3)——用458329个测试用例全面测试二叉树和线索二叉树的遍历算法

    重拾算法(3)--用458329个测试用例全面测试二叉树和线索二叉树的遍历算法 在"上一篇"和"上上一篇"中,我给出了二叉树和线索二叉树的遍历算法.给出算法容易 ...

  5. CSS魔法堂:重拾Border之——更广阔的遐想

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  6. 重拾CCNA,学习笔记持续更新ing......(4)

    重拾CCNA,学习笔记持续更新ing......(4) 路由器作用功能的经典解说(笑)(非原创) 假设你的名字叫小不点,你住在一个大院子里,你的邻居有很多小伙伴,在门口传达室还有个看大门的李大爷,李大 ...

  7. reid 数据集 行人重拾别

    行人重拾别 数据集 jacke121 数据集描述 Market-1501 https://blog.csdn.net/ctwy291314/article/details/83544088 数据集描述 ...

  8. 重拾强化学习的核心概念_强化学习的核心概念

    重拾强化学习的核心概念 By Hannah Peterson and George Williams (gwilliams@gsitechnology.com) 汉娜·彼得森 ( Hannah Pet ...

  9. php byte stringbuffer,重拾java基础(十三):String姐妹StringBuffer、StringBuilder总结

    重拾java基础(十三):String姐妹StringBuffer.StringBuilder总结 一.StringBuffer类概述buffer:缓冲 2. 字符串缓冲区,跟String非常相似,都 ...

最新文章

  1. 智在生活 自在慵懒 科沃斯机器人X京东大牌秒杀日主题展亮相无锡
  2. 跟我一起学docker(五)--仓库
  3. C#生成PDF文件中时,设置边框为虚线和隐藏显示单个或者多个边框。
  4. Linux shell编程学习笔记-----第十六章
  5. Win7 访问共享时输入正确密码仍然提示密码错误
  6. c mysql 地址池_FreeRadius 根据mysql 下发指定地址池的地址...
  7. 运行时异常和检查性异常区别
  8. Python 数据分析三剑客之 NumPy(五):数学 / 算术 / 统计 / 排序 / 条件 / 判断函数合集
  9. ipad如何与计算机连接网络连接不上,平板电脑网络连接不上怎么办
  10. matlab Tricks(二十七)—— 可变输入参数输出参数的适配
  11. HTML使川锚标签,第1章HTML的基本标签祥解.ppt
  12. mysql 连接 互联网_互联网技术分享社区 MySQL字符串连接函数
  13. asp.net执行js出现“已终止操作”的解决方法
  14. 关于CAPWAP的一些概念
  15. JavaScript中的数据类型及数据类型转换(附实例)
  16. Python Django 之 jQuery
  17. word 2013 长篇文档排版案例教程
  18. 电脑记事本中文都乱码了解决方法
  19. 把hive sql的关键字小写转大写的小程序
  20. 解决炉石传说战网无法更新问题

热门文章

  1. PointDSC: Robust Point Cloud Registration using Deep Spatial Consistency (PointDSC) 论文学习笔记小结
  2. leetcode —— 面试题54. 二叉搜索树的第k大节点
  3. 自然语言处理 —— 2.1 词汇表征
  4. 卡尔曼滤波算法及C语言实现(转载)
  5. 计算机桌面文件夹排序,电脑桌面文件整理前后对照
  6. Ubuntu解决sudo source command not found错误
  7. 在VC++中使用Tab Control控件
  8. 1601 - The Morning after Halloween
  9. [GPL]GREP - basic - practice -advanced
  10. mysql报904_EXP-00008:遇到ORACLE错误904问题