C&C++
蹦蹦跳跳的老蜗牛
现在过的每一天,都是余下生命中最年轻的一天。学会珍惜!
展开
-
枚举、结构体、联合体的简单应用程序-C语言
#include //图元的类型enum SHAPE_TYPE{ RECT_TYPE = 0, CIRCLE_TYPE = 1, TRIANGLE_TYPE = 2, SHAPE_NUM,};//为了定义三角形的坐标而设struct point{ float x; float y;};//创建shape结构体struct shape原创 2017-11-08 14:59:30 · 328 阅读 · 0 评论 -
学习静态链接库、动态链接库的创建
momo@momo /home/momo/myfile/mydev/cc/socket/clien% ll总用量 68K-rwxr-xr-x 1 momo momo 14K 10月 30 16:42 clien-rwxr-xr-x 1 momo momo 14K 11月 2 15:19 clien_5-rw-r--r-- 1 momo momo 592 11月 2 1原创 2017-11-16 17:45:37 · 270 阅读 · 0 评论 -
从标准输入获取字符串并将换行符去掉-c语言实现
#include #include int main(){ char buff[1024]; //scanf("%s", buff); fgets(buff, sizeof(buff), stdin); printf("stren buff[%ld]\n", strlen(buff)); buff[strlen(buff)-1] = '\0'; printf("bu原创 2017-12-13 15:53:09 · 4574 阅读 · 0 评论 -
将16进制的数按字符格式存储,转换为10进制数输出-C语言
1、通过输入十六进制形式的字符转换为十进制数输出#include #include #include int main1(){ int a,b; scanf("%X%X", &a, &b);//输入两个值例如:A 8 printf("%5d%5d\n", a, b); //以十进制形式输出为 10 8 return 0;}运行结果:原创 2017-12-06 10:11:58 · 8095 阅读 · 0 评论 -
希尔排序-c语言实现
/**将一组数从小到大进行排列**/#include int shellSort(int a[], int n){ int i,j,d,key = 0; d = n/2;//取间隔值 while(d>=1) { for(i=d;i<n;i+=d) { key = a[i];//储存需要待比较序列的第一个原创 2017-11-27 15:10:40 · 264 阅读 · 0 评论 -
冒泡排序-C语言
/**冒泡排序,从小到大进行排序**/#include int maopaoSort(int a[], int n);int main(){ int i=0; int a[20]; printf("请输入需要排序的序列:\n"); for(i=0;i<10;i++) { scanf("%d", &a[i]); //从键盘输入十个数原创 2017-11-27 16:52:09 · 294 阅读 · 0 评论 -
利用二分法从有序表中查找某个数值-C语言
/**二分法查找有序表(从小到大)中的某个值**/#include #include int binary_search(int key, int *a, int n){ int i,low,high,mid,count=0; low = 0; high = n-1; while(low<high) //查找范围不为0时,进行循环 {原创 2017-11-27 17:57:06 · 4424 阅读 · 0 评论 -
十六进制数转换为十进制-c语言
#include #include int pow(int a,int b);int main(int argc,char *argv[]){ if(argc!=2) { printf("usage:hextoint hex\n"); return -1; } int len = 0; int num = 0;原创 2017-12-07 23:25:00 · 2316 阅读 · 0 评论 -
C语言实现两个变量交换值
#include <stdio.h>#include <string.h>void swap(void *,void *,int);int main(){ int a = 10; int b = 20; printf("交换前:a[%d],b[%d]\n", a, b); swap(&a, &b ,sizeof...原创 2018-04-07 20:35:38 · 471 阅读 · 0 评论 -
链表的创建,倒置,查询,插入操作
#include <stdio.h>#include <stdlib.h>typedef struct node { int data; struct node *next;}linknode,*linkp;int CreateList(linkp H); //创建链表,并返回链表中数值个数void InversionList(linkp H...原创 2018-04-13 00:39:09 · 324 阅读 · 0 评论 -
静态库,动态库的创建与使用
1.静态库静态库的概念静态库就是一些.o目标文件的集合,以.a结尾。静态库在程序链接的时候使用,链接器会将程序中使用到函数的代码从库文件中拷贝到可执行文件中。一旦链接完成,在执行程序的时候就不再需要链接静态库了。由于每个使用静态库的应用程序都需要拷贝所用函数的代码,所以生成的可执行文件会比较大。静态库的创建ar rcs lib库文件名.a 目标文件1 目标文件2 ... 目标文件nr表示将.o的目...原创 2018-05-03 00:07:24 · 249 阅读 · 0 评论 -
make及makefile学习
1.make的使用语法make [选项] [目标] [宏定义]常用选项 特性-d显示调试信息-f<文件> 制定从哪个文件中读取依赖关系信息。默认文件是“Makefile”或“makefile”。“-”表示从标准输入-h 显示所有选项的简要说明-n 不运行任何Makefile命令,只显示他们-s 安静的方式运行,不现实任何信息2.Makefile的编写原则和规则(1)编写规规当make ...原创 2018-05-05 00:26:33 · 482 阅读 · 0 评论 -
判断主机是大端还是小段-C语言
0x12345678 大端:12345678 小端:87654321原创 2017-12-08 16:08:08 · 484 阅读 · 0 评论 -
进程间通信(IPC)
ZH奶酪—张贺人生犹如“迷宫”,每个人都在其中寻找各自的“奶酪”——稳定的工作、身心的健康、和谐的人际关系、甜蜜美满的爱情,或是令人充满想象的财富……博客园首页新随笔订阅进程间通信(IPC)介绍进程间通信(IPC,InterProcess Communication)是指在不同进程之间传播或交换信息。IPC的方式通常有管道转载 2017-12-08 11:07:53 · 209 阅读 · 0 评论 -
c实现signal函数实例
#include #include void sig_hander(int signum){ printf("catch the signal %d\n",signum); return ;}int main(int argc,char **argv){ pid_t pid; pid = getpid(); printf("pid[%d]原创 2017-10-31 11:36:12 · 918 阅读 · 0 评论 -
c语言实现对密码(字符串)进行加密,并解密
/**习惯把密码明文存在本地文件中,这个小程序可以把存的密码以密文形式保存**/#include #include #include #include int chartoasc(char c);int xor(int i);char asctochar(int a);int rand_num();int encrypt(const char *org_pass,char *ne原创 2017-10-31 11:38:30 · 25065 阅读 · 1 评论 -
ASCII值与字符相互转换程序
#include #include #include #include /**chartoasc:char -> ascii**/int chartoasc(char c){ int i=0; i = c; return i;}/**asctochar:ascii -> char**/char asctochar(int a){ char c;原创 2017-10-31 11:42:21 · 1083 阅读 · 0 评论 -
malloc的简单使用-c语言程序
#include #include void *func(){ void *ptr = NULL; ptr = malloc(100); printf("%p\n", ptr); return ptr;}int main(){ void *prt=NULL; prt = func(); i原创 2017-11-09 11:33:48 · 335 阅读 · 0 评论 -
realloc函数的简单应用-c语言程序
程序一:#include #include int main(){ int i = 0; int *member = (int *)malloc(sizeof(int)*50);//给指针member申请内存 printf("member:%p\n", member);//打印member的地址 for(i=0;i<50;i++) {原创 2017-11-13 11:39:40 · 302 阅读 · 0 评论 -
Linux 时间获取函数-C语言
#include #include #include int main(int argc,char **argv){ time_t time_now; struct tm *curr_time = NULL; time(&time_now); printf("time_now:[%ld]\n",time_now); curr_time = gmt原创 2017-10-31 11:41:27 · 656 阅读 · 0 评论 -
有序列表中分块查找-c语言
#include struct block_index{ int start; int end; int key;} index_key[3];int blockSearch(int key, int a[]);int main(){ int numList[16]; int i = 0; int j = 0; int key =原创 2017-11-29 10:36:43 · 913 阅读 · 0 评论 -
Linux时间获取函数-c语言
#include #include #include int main(int argc,char **argv){ time_t time_now; struct tm *curr_time = NULL; time(&time_now); printf("time_now:[%ld]\n",time_now); curr_time = gmt原创 2017-11-29 15:45:27 · 392 阅读 · 0 评论 -
利用srand,rand产生随机数-C语言
#include #include #include int main(){ int i = 0; int r = 0; srand((unsigned long)time(NULL)); //用系统时间做种子产生随机数 for(i=0;i<10;i++) { printf("%3d\t",rand()%100); //随机产生[原创 2017-11-29 15:58:23 · 446 阅读 · 0 评论 -
斐波那契数列-C语言实现
#include #include int main(){ int n = 0; int i = 0; int count = 0; int *fi = NULL; printf("请输入年数:\n"); scanf("%d", &n); fi = (int *)(malloc(sizeof(int)*n)); fi[0] =原创 2017-11-29 16:18:18 · 2062 阅读 · 0 评论 -
哥德巴赫猜想验证(100以内)-C语言
#include int isPrime(int n);int createPosEven(int n[]);int main(){ int i = 0; int j = 0; int k1 = 0; int k2 = 0; int even[50]; int ret1 = 0; int ret2 = 0; int cou原创 2017-11-29 18:01:53 · 9030 阅读 · 1 评论 -
学习 UNIX网络编程卷1:套接字 笔记1-实现一个简单的回射客户服务器程序
一:客户端程序1、头文件:unp.h#ifndef _unp_h#define _unp_h#include /* basic system data types */#include /* basic socket definitions */#include /* timeval{} for select() */#include /* timespec原创 2017-10-31 11:47:20 · 310 阅读 · 0 评论 -
数据结构之队列的学习程序实例
1.队列的定义及特点 定义:队列也是一种运算首先的线性表,他的运算限制与栈不同,是两头都有限制,插入只能在表的一端进行(只进不出)而删除只能在表的另一端进行(只出不进),允许删除的一端称为队头(Front),允许插入的一端称为队尾(rear),当线性表中没有元素时,称为“空队”。 特点:先进先出(FIFO)。2.循环队列 3.顺序循环队列程序实例头文件:includ...原创 2018-05-14 23:46:43 · 509 阅读 · 0 评论