c/c++
wsx_iot
这个作者很懒,什么都没留下…
展开
-
fread与fwrite读取数字或数组
#include <stdio.h> int main() { FILE* pFile; int num1=20,num2=21; pFile = fopen("myfile.bin" , "wb"); fwrite(&num1 , sizeof(int) , 1 ,pFile); fwrite(&num2 , sizeof(int)原创 2017-05-17 23:28:35 · 12052 阅读 · 0 评论 -
c语言二维数组初始化的方式
#include <stdio.h>#include <stdlib.h>int main(){ int **arr; int m=3,n=4,i,j; arr = (int **)malloc(sizeof(int*)*m); for(i=0; i<m; i++) arr[i] = (int *)malloc(sizeof(int)*n);原创 2017-05-17 23:02:28 · 11189 阅读 · 0 评论 -
一维数组和二维数组的数组和指针调用方法
#include <stdio.h>#include <stdlib.h>int main(){ int *p; int i; int size = 10; p = (int *)malloc(sizeof(int) * size); for(i=0; i<size; i++) { //*(p + i) = i;//the fun原创 2017-05-18 18:18:34 · 525 阅读 · 0 评论 -
Codeblocks上dll的创建和使用
环境windows,codeblocks创建C语言动态链接库File->New->Project->Dynamic Link Library,写文件名创建新建的工程原来的main.cpp和main.h删除,新建两个文件simple.h, simple.c添加进工程注意默认是cpp文件,我们做C库,要用C文件simple.h#ifndef SIMPLE_H_INCLUDED#define转载 2017-06-30 21:53:41 · 7288 阅读 · 5 评论 -
指针数组与数组指针
概念辨析指针数组 首先是一个数组,它的组成内容是一个一个的指针示例int *arr1[10];以上是一个指针数组,由于[]的优先级大于*的优先级,所以它首先是一个数组,然后内容元素是指针数组指针 首先是一个指针,它指向一个数组示例int (*arr2)[10]以上是一个数组指针,因为()的优先级比[]的优先级高,所以它首先是一个指针,指向一个数组原创 2017-07-12 11:04:04 · 395 阅读 · 0 评论 -
codeblocks快捷键
本来不想写的,但是老是记不住 快捷键 作用 Ctrl+Shift+L 删除一行 Ctrl+L 剪切一行 Ctrl+D 复制一行 Ctrl+PageUp 到达上一个函数 Ctrl+PageDown 到达下一个函数 Ctrl+Shift+C 注释掉当前行或选中块 Ctrl+Shift+X 解除注释 Ctrl+J 快速调出代码块 T原创 2017-06-23 10:56:01 · 636 阅读 · 0 评论 -
Windows下使用Codeblocks写c语言socket
如何在Windows下使用Codeblocks写c语言socket首先新建一个工程然后右键点击工程名称->Build options->Linker setting 在Link libraries->add->在codeblocks安装路径下MinGW\lib下找到libwsock32.a,加入工程在Other linker options下加入-lwsock32书写符合winsoc原创 2017-06-15 09:00:54 · 6683 阅读 · 4 评论 -
面向对象的c语言
#include <stdio.h>struct Test{ int (*max)(int a, int b); int (*min)(int a, int b);};int mymax(int a, int b){ return a>b?a:b;}int mymin(int a, int b){ return a<b?a:b;}int main()原创 2017-08-13 07:09:03 · 279 阅读 · 1 评论 -
Qt中的搬砖记录
Qt中的一些干货原创 2016-09-25 20:06:51 · 488 阅读 · 0 评论 -
clion使用freopen出问题的解决方法
在clion 上使用freopen时,运行不成功,这是因为cion把代码和运行隔离开了,所以在运行空间里并没有freopen所要打开的文件。我们要Run->Edit configurations,在Working directory栏中选择你的工程目录。原创 2018-01-04 18:44:53 · 2069 阅读 · 2 评论 -
make_heap(), pop_heap(), push_heap()用法
make_heap()是生成一个堆,大顶堆或小顶堆make_heap(_RAIter,_RAIter) 默认生成大顶堆make_heap(_RAIter,_RAIter,_Compare) _Compare有两种参数,一种是greater(生成小顶堆),一种是less(生成大顶堆)push_heap()是向堆中插入一个元素,并且使堆的规则依然成立push_heap(_RAIter,_RAIt原创 2017-03-26 19:34:13 · 13225 阅读 · 3 评论 -
Bellman-Ford算法示例
#include <stdio.h>int main(){ freopen("i3.txt","r",stdin); int dis[10],n,m,u[10],v[10],w[10]; int inf=99999999; scanf("%d %d",&n,&m);//输入点数和边数 for(int i=1; i<=m; i++) scanf原创 2017-03-23 09:54:27 · 2071 阅读 · 0 评论 -
priority_queue的使用
普通队列的优先级是根据进入顺序,默认优先队列的优先级是根据数值的大小。优先队列的内部实现方法运用了堆priority_queue 对于基本类型的使用方法相对简单。他的模板声明带有三个参数:priority_queue<Type, Container, Functional>其中Type 为数据类型, Container 为保存数据的容器,Functional 为元素比较方式。Containe转载 2017-03-22 11:13:30 · 231 阅读 · 0 评论 -
c++多态特性的小小总结
多态的总结原创 2016-09-24 16:19:07 · 350 阅读 · 0 评论 -
c语言及c++中的一些用法
基本数据类型其他用法scanf与gets和getchar用法区别基本数据类型unsigned char,8位无符号整数(0~255)signed char,8位有符号整数(-128~127)unsigned short int,16位无符号整数(0~65525)signed short int,16位有符号整数(-32768~32767)unsign...原创 2016-10-13 10:27:23 · 274 阅读 · 0 评论 -
CodeBlocks常用操作快捷键
CodeBlocks常用操作快捷键编辑部分:Ctrl + A:全选Ctrl + C:复制Ctrl + X: 剪切Ctrl + V:粘贴Ctrl + Z:撤销Ctrl + S:保存Ctrl + Y / Ctrl + Shift + Z:重做Ctrl+Shift+C:注释掉当前行或选中块Ctrl+Shift+X:解除注释Tab:缩进当前行或选中块Shift+Tab:减少缩进按住转载 2017-02-16 18:36:48 · 435 阅读 · 0 评论 -
c++继承与多态概念的简单总结
一开始搞不懂多态,现在明白了,特来总结一下虚基类(虚拟继承) 避免多次基类,避免二义性,保证基类只有一份拷贝 多重继承 为避免二义性的出现,用类域限定符明确指出调用函数所属的基类虚析构函数 实现多态,通过基类指针或引用指向派生类,调用会使该指针或引用调用实际所指对象的析构函数,多用来彻底释放内存,彻底析构派生类虚函数 实现多态,通过基类指针或引用指向派生类,调用会使该指针或引用调用实原创 2017-03-03 18:16:12 · 526 阅读 · 0 评论 -
c语言字符串与数组还有指针的总结(1)
#include <stdio.h>#include <string.h>int main(){ /* char *str = {'h','e','l','l','o'};//运行错误,scalar object 'str1' requires one element in initializer */ /* char *str = "hello";//h原创 2017-03-03 22:39:25 · 3201 阅读 · 0 评论 -
Dijkstra算法的解析
针对下图进行解析,求点1到其他各点的最短路径这是利用Dijkstra算法一步一步算出的最短路径分析上述表格图中的黑色加粗斜体是已经确定的值第一步,查看从点1直接到其他所有点的距离,能到达的写上数值,不能直接到达的写上正无穷。从这些距离中找到最小值,确定该点,下次计算运用到该点第二步,根据上一步获得最小值的路径,用该路径直接到达要计算的路径,跟上一步距离值进行比较,取最小值。从这些距离中找到最小值原创 2017-03-17 19:49:10 · 397 阅读 · 0 评论 -
冒泡排序示例
代码#include <stdio.h>#define SIZE 8void bubble_sort(int a[], int n){ for(int i=0;i<n-1;i++) { for(int j=0;j<n-1-i;j++) { if(a[j]>a[j+1]) {原创 2017-03-17 20:15:46 · 311 阅读 · 0 评论 -
简单选择排序示例
代码#include <stdio.h>#define SIZE 8void select_sort(int a[], int n){ int i,j,min,temp; for(i=0;i<n-1;i++) { min = i; for(j=i+1;j<n;j++) { if(a[j]<a[min原创 2017-03-17 20:24:18 · 1149 阅读 · 0 评论 -
快速排序解析
代码#include <stdio.h>#define SIZE 10void quicksort(int *a, int left, int right){ if(left > right) return; int key = a[left]; int i = left; int j = right; while(i < j)原创 2017-03-17 20:42:12 · 250 阅读 · 0 评论 -
dfs算法示例
代码#include <stdio.h>int book[101],sum,n,e[101][101];//book是是否访问该点的标记,e作为边void dfs(int cur){ int i; printf("%d ",cur); sum++; if(sum==n) return ; for(i=1;i<=n;i++) {原创 2017-03-17 21:34:50 · 693 阅读 · 1 评论 -
bfs算法示例
代码#include <stdio.h>int main(){ int i,j,n,m,a,b,cur,book[101]={0},e[101][101]; int que[10001],head,tail;//模拟队列 scanf("%d %d",&n,&m); for(i=1;i<=n;i++) for(j=1;j<=n;j++)原创 2017-03-17 21:45:53 · 642 阅读 · 0 评论 -
Floyd算法示例
代码#include <stdio.h>int main(){ int e[10][10],k,i,j,n,m,t1,t2,t3; int inf=99999999; scanf("%d %d",&n,&m); for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { if(i==j原创 2017-03-17 20:00:14 · 2777 阅读 · 0 评论