随笔分类 -  c/c++

string类实现(C++)
摘要:1 class CMyString 2 { 3 friend std::ostream& operatorm_pData = 0; 6 } 7 else 8 { 9 this->m_pData ... 阅读全文
posted @ 2014-05-12 23:50 李文斌 阅读(5994) 评论(0) 推荐(1)
vs2012 error c4996: This function or variable may be unsafe
摘要:编译lua源码时,使用vs2012,遇到如下错误。1>------ 已启动生成: 项目: 20130925, 配置: Debug Win32 ------1> stdafx.cpp1>d:\code\20130925\20130925\stdafx.cpp(18): error C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. S 阅读全文
posted @ 2013-12-24 00:42 李文斌 阅读(15165) 评论(0) 推荐(2)
最优装载问题
摘要:问题描述:有一批集装箱要装上一艘载重量为c的轮船。其中集装箱i的重量为Wi。最优装载问题要求确定在装载体积不受限制的情况下,将尽可能多的集装箱装上轮船。 编程任务: 对于给定的n个集装箱和轮船的载重量C,编程计算装入最多时的集装箱个数。输入:输入由多组测试数据组成。每组测试数据输入的第1行中有2个正整数n和C。正整数n是集装箱个数;正整数C是轮船的载重量。接下来的一行中有n个整数,分别表示n个集装箱的重量,它们之间用空格分隔。其中1<=n<=2000,所有正整数不超过231-1输出:对应每组输入,输出的每行是计算出的装入最多时的集装箱个数。样例输入:4 53 5 2 1样例输出:2 阅读全文
posted @ 2012-12-23 22:14 李文斌 阅读(5552) 评论(0) 推荐(0)
C基础题
摘要:1. 关键字static的作用是什么? 在c语言中关键字static有三个明显的作用: 1) 在函数体内,一个被声明为静态的变量在这一函数被调用的过程中维持其值不变. 2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内的所有函数访问,但不能被模块外的其他函数访问.它是一个本地的全局变量. 3) 在模块内,一个被声明为静态的函数只可被这一模块内的其他函数调用.... 阅读全文
posted @ 2012-10-14 01:07 李文斌 阅读(269) 评论(0) 推荐(0)
C++拷贝构造函数(深拷贝,浅拷贝)
摘要:对于普通类型的对象来说,它们之间的复制是很简单的,例如: int a=88; int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。 #include <iostream>using namespace std;class CExample {private: int a;public: ... 阅读全文
posted @ 2012-09-16 15:05 李文斌 阅读(354) 评论(0) 推荐(0)
常量指针和指针常量
摘要:在C/C++的学习中,有人经常搞不清楚“常量指针”和“指针常量”这两个概念。其实简单一点讲,“常量指针”所指向的地址上的数据是常量,而“指针常量”所指向的地址是常量,地址上面的数据是可以变化的。 首先,告诉大家一个小规则,就是像这样连着的两个词,前面的一个通常是修饰部分,中心词是后面一个词,怎么说呢,就像这里的常量指针和指针常量。 常量指针,表述为“是常量的指针”,它首先应该是一个指针。常量指针,就是指向常量的指针,关键字 const 出现在 * 左边,表示指针所指向的地址的内容是不可修改的,但指针自身可变。 指针常量,表述为“是指针的常量”,它首先应该是一个常量。指针常量,指针自身是一... 阅读全文
posted @ 2012-07-11 17:24 李文斌 阅读(271) 评论(0) 推荐(0)
最大公因數
摘要:寫一個程式,輸入兩個正整數 A、B,印出它們的最大公因數。例如:輸入1:96 40輸出1:8輸入2:120 160輸出2:40首先我們先用最簡單的方法,也就是從 A、B 兩數比較小的那個數開始,每次遞減一,直到一為止,一一測試是否可以同時將 A、B 整除,如果可以,則找到最大公因數,並不用再往下測試了。程式如下:int a, b, c, i;cin >> a >> b;if(a>b) c=b;else c=a;for (i=c; i>=1; i--) { if ( (a%i==0) && (b%i==0) ) break;}cout < 阅读全文
posted @ 2012-07-06 13:20 李文斌 阅读(361) 评论(0) 推荐(0)