欢迎辞

欢迎来到“笃志以砺,决起而飞”!
如果您是第一次来到本站,建议访问本站导读以便更快地了解本站。
如果您喜欢本站,欢迎订阅

 

2012 年二月
« 一  
 12345
6789101112
13141516171819
20212223242526
272829 

C++ 笔记:关于输入和输出

使用标准库进行控制台输入输出时,有一些需要知道的内容。

更新缓冲区

使用 C++ 进行控制台输出时,系统将先把内容输出到缓冲区,然后再显示到屏幕或输出到其它输出流的目的地上。为了保证获取输出结果,必须注意更新缓冲区。

导致缓冲区内容被刷新的几种情况

1、程序正常结束。作为main返回工作的一部分,将清空所有输出缓冲区。 2、缓冲区可能已经满了,在这种情况下,缓冲区将会在写下一个值之前刷新。 3、用操作符显式地刷新缓冲区,例如行结束符endl和flush。 4、在每次输出操作执行完后,用unitbuf操作符设置流的内部状态,从而清空缓冲区。 5、可将输出流与输入流关联起来。在这种情况下,在读输入流时,将刷新其关联的输出缓冲区。 此外还应注意,如果程序不正常结束,输出缓冲区将不会刷新。调试程序时,必须保证期待写入的每个输出都确实被刷新了。最好的方法是保证所有的输出操作都显式地调用了flush或endl。 下面的程序输出一些值并关注其缓冲区的状态。

[...]

Greedy Gift Givers 程序 – 今天开始刷USACO

有点晚了,但是,USACO很能考验基础数据结构和算法的熟练度。 题目描述

对于一群要互送礼物的朋友,你要确定每个人收到的礼物比送出的多多少(and vice versa for those who view gift giving with cynicism)(,反之亦然对于那些用贪婪的眼光来看礼物的人(by John))。

在这一个问题中,每个人都准备了一些钱来送礼物,而这些钱将会被平均分给那些将收到他的礼物的人。 然而,在任何一群朋友中,有些人将送出较多的礼物(可能是因为有较多的朋友),有些人有准备了较多的钱。

给出一群朋友, 没有人的名字会长于 14 字符,给出每个人将花在送礼上的钱,和将收到他的礼物的人的列表,请确定每个人收到的比送出的钱多的数目。 格式

PROGRAM NAME: gift1

INPUT FORMAT:

(file gift1.in)

第 1 行: 人数NP,2<= NP<=10

第 2到 NP+1 行:这NP个在组里人的名字 一个名字一行

第NP+2到最后:

这里的NP段内容是这样组织的:

第一行是将会送出礼物人的名字。

第二行包含二个数字: 第一个是原有的钱的数目(在0到2000的范围里),第二个 NGi 是将收到这个送礼者礼物的人的个数 如果 NGi 是非零的, 在下面 NGi 行列出礼物的接受者的名字,一个名字一行。

OUTPUT FORMAT:

(file gift1.out)

输出 NP [...]

使用 OleDB 实现远程多线程数据库访问(C#, Access 数据库)

对于大多数人来说,使用Microsoft SQL Server 或 Mysql 数据库可以方便地完成网络B/S,C/S软件的开发。但是,这是一个潜在的生产成本。Microsoft SQL Server和Mysql 的用于生产的版本不是免费的,更何况SQL Server的安装需要Microsoft Windows Server 系统的支持。 其实,完全可以自己动手、丰衣足食,开发出高效的网络应用开发平台,以便支持同时多用户多线程并发读写,并且只需要本地数据库支持,在这里我用 Access 做例子。 [...]