10 2012 档案

摘要:C++ 11标准新增加了Lambda表达式、for_each语法,并改变了auto关键字的意义。 Lambda表达式是一个匿名函数,整个函数体直接内嵌在普通代码中。 for_each是C++ 11标准的STL库中新增加的函数模板,声明于<algorithm>头文件。 auto关键字原先C语言中的意义是自动类型。现在的C++ 11标准新规定把auto关键字的意思改成了任意类型,但并不是弱类型,仍然是强类型。auto关键字声明的变量必须初始化,在初始化时候,类型就已经决定了,就是初始化的表达式的返回值类型。例如代码 auto n = 1; ,那么n的类型就被规定成int型了。 排序代码 阅读全文
posted @ 2012-10-19 17:09 叶剑飞Victor 阅读(9532) 评论(0) 推荐(1) 编辑
摘要:C++ 11标准新增加了Lambda表达式,以后小函数可以直接内嵌Lambda表达式搞定了。例如排序,我们以前要这么写:#include <iostream>#include <cstdlib>#include <algorithm>bool compare( const int & a, const int & b ){ return a < b;}using namespace std;int main ( ){ int a[10] = {5,1,2,3,6,9,8,2,3,6}; sort( a, a+9, compare ); 阅读全文
posted @ 2012-10-18 21:36 叶剑飞Victor 阅读(562) 评论(0) 推荐(0) 编辑
摘要:先上个预览再秀秀代码<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="zh" xml:lang="zh"><head><meta http-equiv="co 阅读全文
posted @ 2012-10-18 20:01 叶剑飞Victor 阅读(506) 评论(0) 推荐(0) 编辑
摘要:我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用PHP语言实现一下电子邮件地址验证程序,用的是PHP正则表达式库。 源代码如下:<?php header ( "Content-Type: text/html; charset=UTF-8" ); $reply = ""; if ( isset($_POST["email_address"]) ) { $email_ad 阅读全文
posted @ 2012-10-18 15:04 叶剑飞Victor 阅读(57540) 评论(0) 推荐(1) 编辑
摘要:我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用JavaScript语言实现一下电子邮件地址验证程序,用的是JavaScript语言的正则表达式库。 源代码如下,该网页已在IE、Firefox、Chrome上验证通过:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1 阅读全文
posted @ 2012-10-18 14:09 叶剑飞Victor 阅读(11860) 评论(0) 推荐(0) 编辑
摘要:湖南省第八届大学生计算机程序设计竞赛C题 Updating a Dictionary(题目链接)。Problem C Updating a DictionaryIn this problem, a dictionary is collection of key-value pairs, where keys are lower-case letters, and values are non-negative integers. Given an old dictionary and a new dictionary, find out what were changed.Each di... 阅读全文
posted @ 2012-10-18 11:36 叶剑飞Victor 阅读(684) 评论(0) 推荐(0) 编辑
摘要:我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用C++语言实现一下电子邮件地址验证程序,用的是boost正则表达式库。 源代码如下,该代码已在g++ 4.6上验证通过。/* * regex.cpp - 用正则表达式验证电子邮件地址 * * boost正则表达式 * * * Copyright 叶剑飞 2012 * 编译命令: * g++ regex.cpp -o reg... 阅读全文
posted @ 2012-10-17 18:03 叶剑飞Victor 阅读(879) 评论(0) 推荐(0) 编辑
摘要:湖南省第八届大学生计算机程序设计竞赛D题 平方根大搜索(题目链接)。题目D平方根大搜索 在二进制中,2的算术平方根,即sqrt(2),是一个无限小数1.0110101000001001111... 给定一个整数n和一个01串S,你的任务是在sqrt(n)的小数部分(即小数点之后的部分)中找出到S第一次出现的位置,如果sqrt(n)是整数,小鼠部分看作是无限个0组成的序列。输入格式 输入第一行为数据组数T(T≤20)。以下每行为一组数据,仅包含一个整数n(2≤n≤1,000,000)和一个长度不超过20的非空01串S。输出格式 对于每组数据,输出S的第一次出现中,第一个字符的位置。小... 阅读全文
posted @ 2012-10-16 12:50 叶剑飞Victor 阅读(928) 评论(0) 推荐(0) 编辑
摘要:我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用C语言实现一下电子邮件地址验证程序,用的是POSIX正则表达式。由于用的是POSIX正则表达式,所以只能用gcc编译。 另外,据测试,只有Linux原版的gcc才能编译通过。如果用Windows中的MinGW或Cygwin的gcc编译不通过,错误是找不到头文件。 C语言源代码如下:/* * regex.c - 用正则表达式验证电子邮件地址 * * POSIX正... 阅读全文
posted @ 2012-10-07 19:06 叶剑飞Victor 阅读(605) 评论(0) 推荐(0) 编辑
摘要:我们最经常遇到的验证,就是电子邮件地址验证。网站上常见。各种网页脚本也都常用“正则表达式”(regular expression)对我们输入的电子邮件地址进行验证,判断是否合法。有的还能分解出用户名和域名。现在用C++语言实现一下电子邮件地址验证程序,用的是C++ 11标准新增加的STL正则表达式。 源代码如下,该代码已在Visual Studio 2010上验证通过。g++ 4.6不支持C++ 11的STL正则表达式,g++ 4.6上编译可以通过,但运行时错误,抛出regex_error异常。因此,如果要在g++ 4.6上使用正则表达式,请用GNU正则表达式库或者用boost正则表达式... 阅读全文
posted @ 2012-10-07 12:50 叶剑飞Victor 阅读(9157) 评论(1) 推荐(0) 编辑
摘要:以前操作系统课程设计的时候,我们在Linux操作系统中用C语言和POSIX线程库编写过线程同步与互斥。/* * thread_synchronization.c * * Copyright 2012 叶剑飞 * * 编译命令: * gcc thread_synchronization.c -o thread_synchronization \ * -std=gnu99 -pedantic-errors -D_REENTRANT -pthread -Wall * */#include #include #include #include #incl... 阅读全文
posted @ 2012-10-07 01:02 叶剑飞Victor 阅读(6924) 评论(0) 推荐(1) 编辑
摘要:BNU OJ第26303题Touchscreen Keyboard(题目链接)的解题报告。 原题如下:Touchscreen KeyboardProblem DescriptionNowadays, people do not use hardware keyboards but touchscreens. Usually, they touch on the wrong letters with their chunky fingers, because screen space is precious and the letters therefore too small.Usual... 阅读全文
posted @ 2012-10-04 03:00 叶剑飞Victor 阅读(685) 评论(0) 推荐(0) 编辑
摘要:ACM-ICPC Live Archive 第4889题,Post Office(题目链接)。Post OfficeProblem DescriptionOther than postcards, the post office department of some country recognizes three classes of mailable items: letters, packets, and parcels. The three dimensions of a mailable item are called length, height and thickness, .. 阅读全文
posted @ 2012-10-03 00:38 叶剑飞Victor 阅读(973) 评论(0) 推荐(0) 编辑