C程序设计进阶

原课程链接:C程序设计进阶 const vs. static const 限制指针实参的功能 指针常量: 不能修改指针所指向的地址。在定义时必须立即初始化。 示例: char* const ptr = &some_char; // ptr 是一个指向 char 的常量指针 *ptr = 'a'; // 合法,修改了 ptr 所指向的 char 的值 ptr = &another_char; // 错误,不能修改 ptr 的值 常量指针: 不能修改指针所指向地址的内容,但可以改变指针所指向的地址。 示例: const char* ptr; // ptr 是一个指向 char 的常量指针 char const* ptr; // 与上一行等效 *ptr = 'a'; // 错误,不能修改 ptr 所指向的 char 的值 ptr = &another_char; // 合法,可以改变 ptr 的值 static 在函数内部或类中声明的静态变量,其生命周期跨越整个程序执行过程(在循环中多次执行,每次循环的初始值继承了上一次循环的值),且只初始化一次。 string literal #include <iostream> using namespace std; int main() { // input arguments int k=0, m=0, n=0; cin>>k; cin>>m>>" ">>n; // wrong expression. } cin operator automatically skips any whitespace, including spaces and newlines. it’s illegal to use “ ” with cin, because it is string literal, cin could not hold string. ...

2023-12-14 · 6 分钟 · Atom.X

计算导论与C语言基础

原课程链接:计算导论与C语言基础 Turing machine The ranking is in descending order of price and working speed Register: carries operation data and results, as fast as a CPU Cache: data buffer Memory: the part that cannot be placed in the CPU External memory (hard disk, USB flash drive) C. Bohm & G. Jacopini, “Flow Diagrams, Turing Machines and Languages ​​with Only Two Formations Rules”, Communications of ACM, vol9(5) May 1966, pp 366-371. Everything in the world is complicated, and there are only three kinds of logic expressed in programs: ...

2023-12-13 · 2 分钟 · Atom.X

公开课《程序设计与算法》

课程笔记 北京大学coursera 程序设计与算法 Specialization 专项课程。 练习题Github 库 作业参考GitHub - chiuchiuuu/programming-and-algorithm 课程名 以文件夹定义 C1, 计算导论与C语言基础 C2, C程序设计进阶 C3, C++程序设计 C4, 算法基础 C5, 数据结构基础 C6, 高级数据结构与算法 C7, 程序开发项目实践 文件名 取名规则:例如 2.3.3.cpp 2.C程序设计进阶 (系列课程的第二课) 3.函数递归(该课第三周) 3.编程题#4:扩号匹配问题(该周第四题) 不能保证全部代码都通过coursera或POJ的评价 Debugging case: % c++ 3.9.1.cpp 3.9.1.cpp:83:9: warning: ‘auto’ type specifier is a C++11 extension [-Wc++11-extensions] for(auto p : v) { ^ 3.9.1.cpp:83:16: warning: range-based for loop is a C++11 extension [-Wc++11-extensions] for(auto p : v) { ^ 2 warnings generated. ...

2023-12-1 · 1 分钟 · Atom.X

经典音乐

这些经典音乐适合在休息、工作、运动、会议活动时当作背景音 Music - Bach 由于小说《三体》中的叶文洁提到巴赫,遂找来经典音乐,感受一下。 Johann Sebastian Bach - Wikipedia 马太·帕西翁(Matthäus-Passion):这是巴赫最重要的宗教音乐作品之一,以耶稣受难的故事为主题。 布兰登堡协奏曲(Brandenburg Concertos):这是一组六首协奏曲,展示了巴赫在器乐音乐方面的精湛技艺。 哥德堡变奏曲(Goldberg Variations):这是一部钢琴作品,以其复杂的结构和深邃的情感深受赞誉。 大协奏曲(Mass in B minor):这是巴赫晚期的一部大型宗教音乐作品,被誉为西方音乐的巅峰之作。

2023-11-20 · 1 分钟 · Atom.X

欧盟的临期食品安全问题

公益组织缺乏员工培训,以环保和济困的目的,销售严重过期的食品,好心办坏事,将制造食品安全事件,并触犯欧盟食品安全法规。 这不是临期,而是严重过期 最近我路过一家小店,某个公益组织销售临期食品,由于我长期受环保观念影响,积极支持他们的工作。匆匆忙忙买了就走,没有仔细看最后的货架期。 由于这次我选购的是工业食品,我学过不少食品安全方面的常识,不担心什么,大胆放心尝试好了,而且才几欧元,很便宜,但是如果放在其他发展中国家,这算是高价的食品,但很多欧洲人当作“垃圾”直接丢进垃圾桶。 其中一包demiter德米特认证的奶粉,首先尝试了下,明显已经有一种坚果过期接近发霉的气味,味道让人无法接受,喝了点感觉有点风险,于是扔掉了,可能是安全的,但是已经过了最佳赏味期。 另一包是以色列产的Matzo Meal,一种经过犹太洁食认证的非发酵面制品,居然是耶路撒冷牌的,想起来最近的以色列又遭遇战争,挺神奇的,准备试试。 但是仔细看最后货架期,居然早在2月份就过期了,现在10月份,已经严重超期这么久,超了8个月,我很质疑,是不是工作人员搞错了。 3个懵懂的工作人员 于是过了几天再次路过的那个小店的时候,把这两包东西都带过去,完整保留包装,交给工作人员看。 首先是一个大叔,他一把夺过以色列面粉,看了眼说“不行过期太久”,丢进垃圾桶,然后货架上还摆着很多同样的免费,他挨个抽出来看,居然都是2月份,工作人员没有发现,一直摆在那里,至少从2个月前我就看到在那里。 然后奶粉交给他,他无法判断,转交给一个小伙,小伙说“不行,奶粉也不能吃了”,又来了第三个工作人员,是一个老太太,她拿过去一看,说“才过期一个月,可以吃”,重新交到我的手上说“回去吧”,两手做了一个大大的交叉动作,意思是“快4点,关门歇业了,恕不能接待服务”。他们也不提一下,要不要把钱退给我,就这么打发人了, 他们三个还在把头扎在一起讨论“这些过期了1个月的奶粉和过期8个月的面粉该不该吃”的时候,我出门把奶粉扔到垃圾桶了。 货架上还有很多过去超过1个月的东西,继续在那里销售,还有不少人进去买,顾客可不全部都是什么穷人,很多人也都是有良好社会福利的本地人,每个都看着慈眉善目,因为这些顾客都关心环保或支持公益,买这些临期食品是为了减少食品和能源浪费,销售收入可以帮助社会弱势群体等。 难民会买廉价食品吗?实际都是本地人买,我没见过难民去这些临期食品折扣店买东西。尤其是过去这些年来自几个战争国家的难民,都享有良好的社会福利,他们都喜欢去超市采购新鲜食品,我给乌克兰社区的难民送过一些发黑的香蕉,蔫掉的胡萝卜等,也是来自这家店,但他们没有兴趣看一下。 同时我看到还有不少本地人自发的参与其他公益组织活动,免费分享接近临期食品,他们控制得比较严格,不会上架低局里保质期截止低于一个月的工业食品,更不会把1-2天货架期的生鲜食品摆上等。 这种临期食品属于游走在法律边缘地带的东西,有可能弄巧成拙,好心办坏事,所以很多商家把临其食品直接丢到垃圾桶,或有意无意放在外面让人任意拿走,不能公开说免费送,宁可扔掉也不敢冒风险。类似这家教会主办的公益组织,居然能把人家早该丢弃的垃圾卖钱?实属离谱。 为何公益组织缺乏食品安全意识? 有一种非常确定的情况,就是很多公益组织的工作人员本身属于社会边缘群体,缺乏常规的科学教育,或者思维行为的边缘化,只有公益组织才有这样的工作机会或活动供他们参与。 所以,在公益组织能看到很多行为怪异的人,或者缺乏基本生活常识的(文盲),若他们从事食品行业工作,他们就能制造食品安全事件了。 而且那个小店只有不到20平米,居然同时在小柜台后站着3个人,还有2个人在屋子里进进出出地不停忙着,为什么有那么多事可做?真看不出,生意这么好? 还有一种情况,欧洲高度工业化,包括食品工业,即使在小城市,很多人一辈子也没有接触过土地,没有尝过新鲜食物的味道,他们大多数吃的都是工业化食品,例如罐头,工业面包、啤酒、香肠等,所以临期食品到了他们的口中,他们也尝不出来好坏。 或者本身这些民族的特性就是豪放(粗心大意),只要没有中毒或病倒,他们就敢随便乱吃,况且有较好的医疗福利保障呢。 为了环保和拯救地球,豁出去了,节约到极致,令人发指的程度。对比而言,那些穷国家来的难民和寻求庇护者,那生活才叫奢侈浪费(穷奢极欲)。 德国人捐出了自己的一半工资,为了经营社会主义和平权(人人平等),面向所有人开放的较好公共基础设施,并养了来自全世界的难民。很多难民都吃撑了球状的“土肥圆”,而本地不少德国人,尤其是像我上一个房东Christof(绿党成员),极其讲究环保生活,不吃肉,他瘦得面部骨头都凸起来,特别适合在美术雕塑系做人体模特。 对比前两次世界大战挑起者的(杀人狂魔)狠角色,如何看欧洲这种“虐待自己,优惠别人,追求道德”的慈善家现象?特别有意思的问题。 报告给政府 然后查证,当地一个福音派教会的分支机构,是一个叫diakonia的公益组织,这家小店是他们下属的分支机构开办的。 这不是在销售临期食品,而是过期食品(超期1个月甚至半年以上),这不是违法行为吗?德国怎么会有这么离谱的事情?我对这种现象不太理解,于是我的社会责任感的毛病又犯了,想纠正一下他们的不法行为。 不知道具体报告给谁,于是想到写信给政府,尽管我们都知道政府很官僚,只要没有死人,他们就不认为是大事,而且进过一年的打交道,我也充分领教了,欧洲的公益组织也是个很官僚的小政府组织,而不是NGO(非政府组织,谁首次定义这种奇怪的名称?严重名不副实)。他们都会拖拖拉拉,能不工作就绝不会动,但是表面功夫做足,尤其是各种“自由博爱民主人权包容社会责任”的口号和媒体包装做得光鲜亮丽。 我依然决定追究他们的违法行为,邮件如下: Report: Expired food sold by NGO may have safety issues Hi officers, I don’t know where to report this issue. In September I bought some food from Diaconal Shop Bread & Salt. I found some problems and attached pictures to the email for your reference. ...

2023-10-1 · 2 分钟 · Atom.X