纪念一塌糊涂

本文介绍了一塌糊涂BBS的发展历程。它于1999年9月17日由北大研究生架设,逐渐发展为教育网内最大的BBS之一。该BBS秉承民主自由精神,但也因此面临诸多管理压力。2004年9月13日,它被永久关闭,相关信息被屏蔽,关站原因引发网民质疑。

糊涂是在2004年9月13日被关的  再不提起,人们就会忘记了

精华区下载    ftp://ftp.lib.pku.edu.cn/incoming/Document_incoming/YTHT/

精华区在线浏览地址    http://hkday.net/ytht/

一下有关于她的介绍 (转自维基百科) http://zh.wikipedia.org/wiki/一塌糊涂BBS


一塌糊涂BBSYTHT1999年9月17日2004年9月13日),是一个完全民间性质的BBS站点,曾是中国大陆非常具有影响力的一个BBS,在关闭前也是教育网内平均在线人数最多的BBS。在其管理理念的影响下,BBS上的言论自由程度较高,民主氛围较浓,受此影响,一塌糊涂多次面临内部管理上和一些外部力量的很大压力,曾多次被要求局部版面整顿和设为只读状态,并最终于2004年9月13日下午13时许,被北京市通信管理局执行关站。北大部分教授对此次关站的合法性提出了质疑。 一塌糊涂BBS站名是谐音“一、塔、湖、图”。这是对北京大学校园内著名地点的一个概括,即博雅塔未名湖北京大学图书馆

简史

一塌糊涂BBS最初是1999年9月17日北京大学物理系研究生lepton架设,主要面向于北京大学学生的小型BBS,最初的域名为lepton.dhs.org。后来逐渐发展为中国大陆教育网内最大的BBS之一。

1999年9月20日进站欢迎档改为塔、湖、图的画面组合。9月21日,域名ytht.dhs.org生效。2000年3月24日正式启用现在的域名ytht.net。2000年5月3日,YTHT第一届民选站务正式上任,这也被认为是中国大陆BBS站点第一次民选产生的站长。2003年起,开始增加海外通道proxy2.ytht.net。 2004年5月,申请包月出国网络连接,停止proxy2.ytht.net。

一塌糊涂在其长期的发展过程中,一直秉承着民主自由的精神,而这种精神一方面使得一塌糊涂的影响力不断增长,另一方面也给一塌糊涂带来了管理上的巨大压力。

2002年5月1-7日,被要求全站性暂时中止服务。2003年5月4日,三角地、公民生活版被要求只读整顿。 2003年6月-7月,东方之珠版(Hongkong版)被要求只读整顿。2004年8月19日,被有关部门要求进行全站性整顿,几乎所有涉及政治话题的版面均被设为只读,只有讨论时事政治最为集中的triangle(三角地)版在上级要求下继续开放。

2004年9月13日,北京市通信管理局下达通知,永久关闭一塌糊涂BBS。一塌糊涂BBS也在接到通知前的当日下午十三时五十分时被切断路由。随后,中国大陆的各大BBS站点相继发布公告,禁止讨论一塌糊涂BBS有关事宜,删除论坛内有关一塌糊涂BBS的帖子,并将“ytht”、“一塌糊涂”、“糊涂”、“一塌”等设为过滤词。此外,百度搜索引擎公司也屏蔽了一塌糊涂BBS相关的关键词的搜索。至此,已基本上抹除了一塌糊涂在中国互联网上的痕迹。由于关站的具体原因没有公示,导致一塌糊涂参与者在内的部分网民进行猜测并置疑其合法性,这成为一塌糊涂被继续关注的重要原因。

以下是对之前 C 语言代码的正确性说明及相关解释: ### 代码正确性 之前提供的 C 语言代码是正确的。它实现了将液晶数字字符串解析为整数的功能。具体来说,代码通过以下几个步骤完成解析: 1. **定义数字模式**:使用数组 `digit_patterns` 定义了每个数字(0 - 9)的液晶显示模式。这些模式是固定的,用于后续的匹配操作。 ```c const char *digit_patterns[] = { "....\n.#.#\n.###\n.#.#\n....", "....\n..#.\n..#.\n..#.\n....", "....\n.###\n...#\n.###\n....", "....\n.###\n..#.\n.###\n....", "....\n.#.#\n.###\n..#.\n....", "....\n.###\n.#..\n.###\n....", "....\n.###\n.#.#\n.###\n....", "....\n.###\n..#.\n..#.\n....", "....\n.###\n.#.#\n.###\n....", "....\n.###\n.#.#\n..#.\n...." }; ``` 2. **检查数字**:`get_digit` 函数用于检查当前提取的模式是否与预定义的数字模式匹配。如果匹配,则返回对应的数字;否则返回 -1,表示无效模式。 ```c int get_digit(const char *pattern) { for (int i = 0; i < 10; i++) { if (strcmp(pattern, digit_patterns[i]) == 0) { return i; } } return -1; // 无效模式 } ``` 3. **解析字符串**:`LEDToInt` 函数是核心解析函数。它首先将输入的字符串按行分割,然后计算数字的个数。接着,对于每个数字,提取其对应的模式并调用 `get_digit` 函数获取对应的数字。最后,将这些数字累加到结果中。 ```c int LEDToInt(const char *s) { int result = 0; int num_lines = 0; const char *lines[5]; const char *p = s; // 分割字符串为 5 行 while (*p && num_lines < 5) { lines[num_lines] = p; while (*p && *p != '\n') p++; if (*p == '\n') p++; num_lines++; } int num_digits = strlen(lines[0]) / 4; for (int i = 0; i < num_digits; i++) { char pattern[25]; int index = 0; for (int j = 0; j < 5; j++) { for (int k = 0; k < 4; k++) { pattern[index++] = lines[j][i * 4 + k]; } if (j < 4) { pattern[index++] = '\n'; } } pattern[index] = '\0'; int digit = get_digit(pattern); if (digit == -1) { return -1; // 无效输入 } result = result * 10 + digit; } return result; } ``` ### 示例调用 以下是一个示例调用,展示了如何使用 `LEDToInt` 函数: ```c #include <stdio.h> int main() { char input[] = "....#...#....#...#.\n.#.#..#..#.#.#..#..\n.###..###..###..###\n.#.#..#....#.#..#..\n....#...#....#...#."; int result = LEDToInt(input); if (result == -1) { printf("Invalid input\n"); } else { printf("%d\n", result); } return 0; } ``` ### 总结 该代码通过预定义数字模式、模式匹配和字符串解析等步骤,正确地实现了将液晶数字字符串解析为整数的功能。同时,代码还处理了无效输入的情况,当输入的模式不匹配任何预定义数字模式时,返回 -1 表示无效输入。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值