自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 typedef是将type变换为def的映射

对于一个变量或函数,其类型就是声明过程去掉变量名或函数名剩下的东西,如int a,a的类型就是去掉int后剩下的东西int,对于声明 int (*p[10])[5],其类型就是int (*[10])[5]。其类型是int (*[10])[5],或者说p是一个内含10个指针的数组,每个指针指向一个内含5个int型元素的数组。fc p 等价于 fb p[10] 等价于 fa *(p[10]) 等价于 int (*p[10])[5],“typedef 声明(pf);”就等价于“声明(a);

2023-12-01 10:25:23 362 1

原创 C语言函数名:取指映射的不动点

对于函数fun,由于函数名就是其地址,因此fun=*fun=**fun=…*fun,故fun(…),曾经这东西是有争议的,但最终妥协并保留了这种操作。

2023-12-01 09:41:27 329 1

原创 赛尔号抽奖模拟求期望

c语言位运算算法

2022-06-17 15:58:16 223 1

原创 梅花易数C语言实现(六十四卦卦辞用的是python)用了python

#include <stdio.h>#include <stdlib.h>#include <time.h>const char xiantian[8][60]={"乾","兑","离","震","巽","坎","艮","坤"};const char baxiang[8][4]={"天","泽","火","雷","风","水","山","地"};const char htfw[8][8]={"西北","正西","正南","正东","东南","正北","东北",

2022-01-30 12:35:39 3502 1

原创 力扣118 杨辉三角C实现

不浪费一丝一毫的空间/** * Return an array of arrays of size *returnSize. * The sizes of the arrays are returned as *returnColumnSizes array. * Note: Both returned array and *columnSizes array must be malloced, assume caller calls free(). */int** generate(int

2022-01-06 10:43:06 718 2

原创 CRC校验码C语言实现

时间与空间不可得兼。。我选择空间。。空间复杂度还是很低的。。#include <stdio.h>int shi(int n){ return (n>0)?shi(n=n>>1)+1:0; }void turnb(int n){ if(n!=0){ turnb(n>>1); printf("%d",n&1); }}int convertBinaryToDecimal(long

2022-01-05 18:29:32 1201

原创 C实现多项式F_2上的阶(线性反馈移位寄存器)

C语言求多项式F_2上的的阶F_2:{0,1}二元域求阶的函数反馈多项式的阶等于线性反馈移位寄存器不同初态输出序列的最大周期(类似最小公倍数)。int getlev(const int n){ int len=shi(n); int ans=len; int l=1<<len-1; int reg,midlen; reg=n^l; if(reg==1)return len-1; for(;;){

2022-01-03 09:10:35 828

原创 双重指针之malloc

malloc函数的作用是动态地分配一段连续的空间,并返回这块空间的首地址int *p;//*p=3;//(error)p=(int*)malloc(sizeof(int));*p=3;

2021-10-30 15:26:19 811

原创 用C改写一个高速strlen

int lenstr(char*s){ if(!s[0])return 0; int i,j; for(i=1;s[2*i];i*=2); j=i*2; while(i+1<j) { i=s[(i+j)/2]?(i+j)/2:i; j=s[(i+j)/2]?j:(i+j)/2; } return j;} 用C搞一个快一点的strlen

2021-10-26 15:42:14 96

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除