c问题记录
Lenaz
1.在自己的能力范围内,提出一些合理的要求,可以使人走的更远
2.不断学习
展开
-
malloc(0)分配到的内存大小
char *ptr;if ((ptr = (char *)malloc(0)) == NULL) puts("Got a null pointer");else puts("Got a valid pointer");这道题答案是?输出:Got a valid pointermalloc(0)是指分配内存大小为0,也是一种存在,不是NULL翻译 2017-07-11 16:25:17 · 323 阅读 · 0 评论 -
C++11中,&表示左值引用,&&表示右值引用
左值和右值都是针对表达式而言的,左值是指表达式结束后依然存在的持久对象,右值指表达式结束时就不再存在的临时对象——显然右值不可以被取地址原创 2017-07-11 16:07:37 · 1519 阅读 · 0 评论 -
typedef char map是什么?
有人问我, typedef char map是什么?我当时回答说typedef和const相同。改正:typedef 和define作用类似,但实质不同。typedef的作用就是:为现有类型创建新名字(或者同义词)使用的目的:1.给变量一个易记且意义明确的新名字 2.简化一些比较复杂的类型声明用法:typedef existing_原创 2017-07-12 09:50:34 · 401 阅读 · 0 评论 -
数组名 a 与&a的区别
int a[5]={1,2,3,4,5};int* ptr=(int*)(&a+1);printf("%d,%d\n",*(a+1),*(ptr-1));结果截图:(1)数组名a是指针常量,只有2种情况下,不是用来表示指针常量。1.sizeof(a)表示的是a数组的长度,不是常量指针a的长度2. &a--表示的是整个数组,不是&a[0]的地址,虽然&a与&a[0原创 2017-07-12 10:11:14 · 698 阅读 · 0 评论 -
求0-1间的随机浮点数
#include#include#includevoid main(){float a[10];int i;srand(time(NULL));for(i=0;iprintf("%0.2lf\n",(rand()%2)/20000.0);}因为%2的范围是0-1然后除以20000就是0-0.00005。然后保留2位小数,就全部都是0.00原创 2017-07-13 16:58:00 · 1497 阅读 · 0 评论