【函数集】怕忘记的函数集合与用法

因为急性不太好,所以有时候会忘记函数的使用,所以将我之前记录的函数和其功能写下来,虽然现在只有一点点(真的只有一点点),但是后续任然会不断更新。

计算表长度

int len1 = length(L1);		//链表/顺序表长
int len1 = strlen(L1);		//计算字符表表长 

开平方

b = sqrt(x);

扩大申请空间(一)

int *num = (int*)calloc(长度n,sizeof(int));

扩大申请空间(二)

数值/字符:int *num = (int*)malloc(长度n*sizeof(int));
结点类:struct TreeNode **nodeQueue =(struct TRreeNode**)malloc(长度*(struct TreeNode *));

比较字符串P,Q的前n个字节是否相同

memcmp(P,Q,n);		//比如num[0] = num[1] =1;

分开表达

switch(表达式){ 
	case 表达式常量1:语句1; break;
}
————————————————————————————————————————
switch(a){
    case 1: printf("Monday\n"); break;
    case 2: printf("Tuesday\n"); break;
    case 3: printf("Wednesday\n"); break;
    }

清空字符串输入缓冲区

fflush(stdin);
//功能是清空输入缓冲区,通常是为了确保不影响后面的数据读取(例如在读完一个字符串后紧接着又要读取一个字符,此时应该先执行fflush(stdin);

cout和printf机制

//众所周知,cout和buffer都是有缓冲的;
(网上很多把cout和printf混用出错归结为一个有缓冲,一个无缓冲,事实会在下面说明);
//cout和printf的输出是先从右往左读入缓冲;
对,这里的缓冲区相当于堆 栈的效果

a = 1; b = 2; c = 3;

cout<<a<<b<<c<<endl;

buffer:|3|2|1|<-   (take “<-” as a poniter)

output:|3|2|<-(output 1) |3|<- (output 2)   |<- (output 3)

&和*的

&a是取变量或指针自身的地址;
*a是取指针中指向地址内的数据;什么都不加,就是取该变量或指针中当前存储的数据
*&a:通常用于函数的传值,表示传入指针本身,不作复制(后面讲这句话的意思)。

printf("%p\n",&a);    \\输出变量a自身地址
printf("%p\n", b); \\输出指针b中指向的地址,即a地址
printf("%p\n", &b);  \\输出指针b自身的地址
printf("%d\n", a);   \\输出变量a中数据10
printf("%d\n", b);   \\输出指针b中存储的数据,5240892即为16进制004FF83C
printf("%p\n", b);   \\输出指正b中存储数据,以指针格式输出
printf("%d\n", *b);  \\输出指针b指向的地址内的数据,即a的数据

计识别是否是数字、字母

数字:isdigit()

c标准库头文件为:<ctype.h>
在C语言中他的函数:void isdigit(int c) 检查所传的字符是否是十进制数字字符,如下所示
十进制数字是:0 1 2 3 4 5 6 7 8 9

下面是 isdigit() 函数的声明。
int isdigit(int c);

参数:c 即是需要检查的字符。
返回值:如果 c 是一个数字,则该函数返回非零值,否则返回 0。

字母:isalpha()

C标准库头文件为:<ctype.h>
在C中它的函数:isalpha( int c ) 判断字符ch是否为英文字母,

返回值: 若为小写字母,返回2,若为大写字母,返回1。若不是字母,返回0。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值