
c/c++
文章平均质量分 77
drlmemory
这个作者很懒,什么都没留下…
展开
-
常见排序算法C/C++实现总结
在数据结构与算法中常见的排序算法有:1.插入排序;2.冒泡排序;3.堆排序;4.归并排序;5.快速排序;相关实现:一、插入排序#include void InsertSort(int arr[],int num){ for (int i = 1; i < num; i++) { for (int j = i; j > 0; j--) { if原创 2016-07-15 17:12:22 · 313 阅读 · 0 评论 -
C语言大小端问题剖析
在C语言中,常常会遇到判断CPU大小端的问题,在很多的笔试面试中经常会出现类似的题目,网络编程中也会进程遇到类似的问题,此文做以总结。1、那么何为CPU的大端和小端呢?大端: 指的是数据的高字节存放在内存的低地址中,数据的低字节存放在内存的高地址中;小端: 指的是数据的高字节存放在内存的高地址中,数据的低字节存放在内存的低地址中;2、如何用图来说明?例如原创 2016-12-23 11:49:54 · 719 阅读 · 0 评论 -
C或C++语言交换变量值的方式
C或者C++经常会有交换变量的方式,以下为交换变量的几种具体形式的实现#include <iostream>int main(void){ int a = 3, b = 4; //借助第三方临时变量 int temp; temp = a; a = b; b = temp; std::cout << "a=" << a << ",b=" << b原创 2017-08-09 10:02:38 · 1422 阅读 · 0 评论 -
数组中只出现一次的问题(异或问题)
具体描述: 在一个整型数组中,数组都是成对出现,只有两个元素为单独的元素,求出这两个元素的值。思路: 1、此处为异或预算符的经典问题,两个相同值的异或运算后的值为0; 2、首先将数组的所有元素做异或运算,最后得到的是两个单独元素异或后的值 (因为相同元素异或后的值均变成0); 3、两个单独元素肯定会有某一位或者几位是不同的,找出要么为0,要么为1,我们可以根据此位为0或者1,将数组元素分原创 2017-08-10 20:53:17 · 432 阅读 · 0 评论 -
C++设计模式系列(一):单例模式
在GOF的《设计模式 可复用面向对象软件的基础》中一共讲解了23种设计模式,我们在各种代码和框架中或多或少的发现他们的影子,为了更好的掌握这些设计模式,我们将以C++代码的形式在博文中做一个总结。一、单例模式1.引言单例模式是在各种设计模式中最基础的一个设计模式,因为只涉及到一个类,所以也是最简单的一个设计模式,单例模式的主要意图和动机是什么呢?我们可以看下《设计模式 可复原创 2017-09-03 22:08:27 · 294 阅读 · 0 评论 -
c/c++内存对齐总结
1、引言对于结构体来经常会涉及到内存对齐问题,如下面代码所示:#include struct Test{short x1; char x2; float x3; char x4; };int main(void){struct Test t;//printf("0x%p\n", &t.x1);//pr原创 2017-08-30 18:23:02 · 279 阅读 · 0 评论 -
二维数组和指针之间的关系详解
一、引言说起二维数组可能首先想到的是各种嵌套的for循环,二维数组的初始化,二维数组的赋值,二维数组的输出等各种问题,当然了,数组的问题永远离不开指针,而二维数组所能联系到的就是二维指针了,此文则是着重讲解二维数组与二维指针之间的关系。二、初始化与赋值#define M 4#define N 5int arr[M][N] = {{2,3,4,5},{3,5,},{6,},{9原创 2017-09-09 14:12:40 · 5682 阅读 · 0 评论 -
一道面试题引发的关于c语言中文件操作的总结
一、引言最近在准备面试的过程中,找到了一道难度不是很大的面试题,以此来进行文件操作相关函数以及用法的总结,面试题是这么讲的:请编写程序:从键盘输入一个字符串,将其中的小写字母全部转化为大写在吗,输出到磁盘文件“upper.txt"中保存。输入的字符串以”!“结束。然后,再将文件upper.txt中的内容读出显示在屏幕上。初看此题觉得不是很难,写代码的时候发现自己久疏战阵,很多文件操作的原创 2017-09-12 19:37:49 · 1057 阅读 · 0 评论 -
windows下编写Dll动态库及调用
概述 DLL:Dynamic Link Library,即动态链接库,这种库包含了可由多个程序同时使用的代码和数据。 它是microsoft在windows操作系统中实现共享函数库概念的一种实现方式。方法 1、新建工程:打开VS2015,选择新建项目,依次点击:VisualC++ -> Win32 -> Win32项目(填写名称,路径) -> 确定 –> 下一步(应用程序类型选择Dll,勾选原创 2017-05-09 22:06:39 · 3036 阅读 · 0 评论