TCPL 阅读笔记 Chapter1

#include <stdio.h>
#define OUT 0
#define IN 1
int main(void)
{
	int c,state,nl,nc,nw;
	state = OUT;
	nl = nw = nc = 0;
	while((c=getchar())!=EOF)
	{
		nc++;
		if(c=='\n') {
			nl++;
		}
		if(c==' ' || c=='\n' || c=='\t')
		{
			state = OUT;
		} else if(state==OUT) {
			state = IN;
			nw++;
		}

	}
printf("nl = %d,nw = %d, nc = %d\n",nl,nw,nc);
}

以上程序统计控制台中输入文本的字符数、单词数、行数。

时间: 2024-07-29 07:14:16

TCPL 阅读笔记 Chapter1的相关文章

CI框架源码阅读笔记2 一切的入口 index.php

上一节(CI框架源码阅读笔记1 - 环境准备.基本术语和框架流程)中,我们提到了CI框架的基本流程,这里再次贴出流程图,以备参考: 作为CI框架的入口文件,源码阅读,自然由此开始.在源码阅读的过程中,我们并不会逐行进行解释,而只解释核心的功能和实现. 1. 设置应用程序环境 define("ENVIRONMENT", "development"); 这里的development可以是任何你喜欢的环境名称(比如dev,再如test),相对应的,你要在下面的switch

谷歌Borg论文阅读笔记(一)——分布式架构

传说中,Borg之前号称是Google内部和PageRanking相提并论的同等重量级的东西.现在公布了篇论文,读了一部分,还是有些地方没理解. 求讨论. Borg简介: Borg的作用是:提供一个标准任务规格语言,集成名字服务,实时任务监控,以及工具来分析和模拟系统行为. Google内部的集群管理系统调用都是用Borg来admits(准入),schedules(调度),starts,restarts,Borg还监控所有Google所有范围运行的应用. Borg的好处: 隐藏资源管理和故障处理

Apache Spark源码走读(一)Spark论文阅读笔记&amp;Job提交与运行

<一>Spark论文阅读笔记 楔子 源码阅读是一件非常容易的事,也是一件非常难的事.容易的是代码就在那里,一打开就可以看到.难的是要通过代码明白作者当初为什么要这样设计,设计之初要解决的主要问题是什么. 在对Spark的源码进行具体的走读之前,如果想要快速对Spark的有一个整体性的认识,阅读Matei Zaharia做的Spark论文是一个非常不错的选择. 在阅读该论文的基础之上,再结合Spark作者在2012 Developer Meetup上做的演讲Introduction to Spa

Kryo简介及代码阅读笔记

更新:2012-08-01 版本 2.16长时间运行可能会导致OOM,版本2.18有bug,不能正确序列化map和collection. 真是悲剧,所用的每一个版本都有bug.不过从代码来看,作者有时的确比较随便..测试用例也少..(比起msgpack少多了) ======================================== Kryo官方网站:https://code.google.com/p/kryo/ 优点:     速度快!见https://github.com/eisha

Apache Storm源码阅读笔记&amp;OLAP在大数据时代的挑战

 <一>Apache Storm源码阅读笔记 楔子 自从建了Spark交流的QQ群之后,热情加入的同学不少,大家不仅对Spark很热衷对于Storm也是充满好奇.大家都提到一个问题就是有关storm内部实现机理的资料比较少,理解起来非常费劲. 尽管自己也陆续对storm的源码走读发表了一些博文,当时写的时候比较匆忙,有时候衔接的不是太好,此番做了一些整理,主要是针对TridentTopology部分,修改过的内容采用pdf格式发布,方便打印. 文章中有些内容的理解得益于徐明明和fxjwind两

谷歌Borg论文阅读笔记(二)——任务混部的解决

总算又往下读了一部分.Google的Borg论文中,前面部分讲的都是Borg的架构.后面有讲了一些资源隔离,安全隔离等的技术方案和策略. 主机层面的资源隔离,都是由是Borglet来操纵的. Google的混部情况: Google几乎所有的机器都是混部的,在一台机器上,可能运行着不同jobs的tasks.根据论文中所说,Google的50%的机器运行了9个甚至更多的tasks.90%的机器运行着25个tasks,达到4500个线程. 因此,Google有完善的隔离技术来保证task之间不相互影响

多模态小组阅读笔记精选 | 每周一起读 #7

本期精读文章 An Empirical Study of Language CNN for Image Captioning 文章来源 https://arxiv.org/abs/1612.07086 推荐理由 本篇论文提出了用 CNN 模型来对单词序列进行表达,该 CNN 的输入为之前时刻的所有单词,进而可以抓住对生成描述很重要的历史信息.其中总体架构如下图所示: 该模型主要由四部分组成,用于图像特征提取的 CNN_I,用于自然语言建模的 CNN_L,用于结合 CNN_I 和 CNN_L 信息

php中get_adjacent_post函数PHP源码阅读笔记

这个函数是wordpress里的一个函数,作用是获取相邻的POST文章. 函数并不大,有效代码大概只有70行左右,但是里面包含的知识不少,所以专门用一篇文章来解释一下. get_adjacent_post函数的源码位于wp-includes/link-template.php中. 我会通过"//roc:"在引出源码阅读笔记. /**  * Retrieve adjacent post.  *  * Can either be next or previous post.  *  * @

知识图谱小组阅读笔记精选 | 每周一起读 #6

本期精读文章 Neural Relation Extraction with Selective Attention over Instances 论文链接 https://aclweb.org/anthology/P/P16/P16-1200.pdf 推荐理由 本文为清华刘知远老师组里的工作,使用了 attention 去衡量关系抽取的时候当前句子和当前关系的匹配程度,比较好的删选了远程监督候选句子中和当前关系无关的句子,从而提高了性能. 知识图谱小组阅读笔记精选 >>>karis&l