![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c/c++
文章平均质量分 59
wkq87
这个作者很懒,什么都没留下…
展开
-
判断大小端
#include bool CheckCPU(){ union w { int a; char b; } c; c.a = 1; return (c.b == 1); }void main(){ if (CheckCPU(原创 2011-09-03 16:18:14 · 397 阅读 · 0 评论 -
C\C++面试题
最近这段时间忙于笔试、面试,没时间做总结。把碰到的几个有些疑问的东西拿出来分享一下。1,如果用一个循环数组q[0..m-1]表示队列时,该队列只有一个队列头指针front,不设队列尾指针rear,求这个队列中从队列投到队列尾的元素个数(包含队列头、队列尾)。(华赛面试题、腾讯原创 2011-09-26 13:18:18 · 3195 阅读 · 2 评论 -
各种排序算法
若将一组数n个从小到大排列 1.冒泡排序冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。相当于每次找到最大的数放在最后面,类似于冒泡。第一次:从第一个数开始,相邻的两个数进行交换,若a[i]第一次需要进行n-1次判原创 2011-08-24 16:56:53 · 405 阅读 · 0 评论 -
类的构造、析构、拷贝、赋值函数
读《高质量程序设计指南》chapter 14总结一般情况下,对于任意一个类A,如果不显示的声明和定义,会自动生成默认的4个public inline函数class A{A(); //////////构造函数原创 2011-08-26 16:47:37 · 451 阅读 · 0 评论 -
虚析构函数
1.当通过基类指针来删除派生类对象时,如果基类的析构函数不是虚函数,如下例所示: #include using namespace std;class Base{public: Base() { cout } ~Base() {原创 2011-08-23 10:10:40 · 373 阅读 · 0 评论 -
基础练习三(类的大小)
类所占内存大小,这里做一下实验:1.只有成员函数class A{ A() { ; } ~A() { ; }void atest() { ; }}; printf("%d\n",sizeof(A));////原创 2011-08-18 17:36:19 · 351 阅读 · 0 评论 -
基础练习二
求较小的值,不能用 比较运算符 if-else ?: while for 内嵌汇编 递归 第三方函数#include // 要求写的函数 int Min(int a, int b) { return (&b)[(a-b)>>31];原创 2011-08-17 10:46:08 · 329 阅读 · 0 评论 -
基础练习一
1、 假设在n进制下,下面的等式成立,n值是()567*456=150216a、9 b、10 c、12 d、18关键是要弄清楚进制的含义,千万不能以为567是十进制按进制的定义,若未n进制,转换为十进制的规则下进行计算,则有:(5*(n^原创 2011-08-17 09:54:43 · 515 阅读 · 0 评论 -
几个典型的内存拷贝及字符串函数实现
写一个函数,完成内存之间的拷贝。[考虑问题是否全面,是否考虑内存重叠问题]返回void *支持链式操作,参数类型是void *以支持任意类型的指针,输入参数加上const修饰,最好加上assert对输入输出指针进行非NULL判断void* memcpy( void转载 2011-08-15 17:23:32 · 994 阅读 · 0 评论 -
面试题三(字符串中提取数字)
字符串提取数字完成函数void take_num(const char *strIn, int *n, unsigned int *outArray)如输入strIn="ab00cd+123fght456-25 3.005fgh"输出n=6outAr原创 2011-09-06 14:07:06 · 1156 阅读 · 1 评论 -
C语言符号扩展
int main(void){ unsigned int a = 0Xfffffff7; char *b = (char *)&a; printf("%08x", *b);}今天在网上看到这样一个题目。在VC++6.0环境下输出为:fff原创 2011-08-05 17:22:23 · 1804 阅读 · 0 评论 -
大数运算
所谓的高精度运算,是指参与运算的数(加数,减数,因子……)范围大大超出了标准数据类型(整型,实型)能表示的范围的运算。例如,求两个200位的数的和。这时,就要用到高 精度算法了。在这里,我们先讨论高精度加法。高精度运算主要解决以下三个问题:基本方法 1、加数、减数原创 2011-09-04 21:47:26 · 491 阅读 · 0 评论 -
面试题二(高精度算法)
高精度整数加法要求实现函数: void add (const char *num1, const char *num2, char *result)【输入】num1:字符串形式操作数1,如果操作数为负,则num1[0]为符号位'-' nu原创 2011-09-06 10:33:31 · 924 阅读 · 0 评论 -
面试题一(删除子串)
删除字符串中所有给定的子串问题描述: 在给定字符串中查找所有特定子串并删除,如果没有找到相应子串,则不作任何操作。要求实现函数: int delete_sub_str(const char *str, const char *sub_str, char *resu原创 2011-09-05 20:51:02 · 1159 阅读 · 0 评论 -
回调函数
窗口过程函数原型如下:LRESULT CALLBACK WindowProc( HWND hwnd, // handle to window UINT uMsg, // message identifier WPARAM wParam,原创 2011-09-02 17:54:13 · 389 阅读 · 0 评论 -
C++内存管理
最近在看林锐《高质量C++编程指南》,第18章中讲到内存管理一章,做个总结。1.内存分配的三种方式: a.静态存储区域分配.内存在程序编译的时候就已经分配好了,已经编址,而且程序整个运行过程中一直存在。如全局变量,static静态变量等。 b.栈上创建. 自动原创 2011-08-24 11:14:51 · 416 阅读 · 0 评论