为什么引入数据类型?
为了更方便的表达现实生活中的人事物!
b和b+1 地址差4
&b和&b+1 差4*10
数据类型的封装
1、void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。
C语言规定只有相同类型的指针才可以相互赋值 void*指针作为左值用于“接收”任意类型的指针 void*指针作为右值赋值给其它指针时需要强制类型转换
2、 变量
变量本质是一个连续内存空间的别名,本质还是为了操作内存; 不能修改的叫常量;
个优秀的排序文章:
https://www.cnblogs.com/eniac12/p/5329396.html
#includevoid printfT(int *a ,int num) { for(int i = 0;i printf("[printfT] num:%d n",a[i]); } } //注意 此处数组作为函数参数 会退化为指针 //形参写到()内和函数中是一样的,写到()内做形参提供对外接口 //如果在sortArr函数总 进行sizeof(a)/sizeof(a[0])他的值等于1,而不是预想的8 void sortArr(int *a ,int num) { int i=0,j=0,tmp=0; for(i=0;i for(j=i;j if(a[i] > a[j]) { tmp=a[i]; a[i]=a[j]; a[j]=tmp; } } } } int main(void) { int num = 0; int a[] = {33,654,4,455,6,33,4,3333}; num = sizeof(a)/sizeof(a[0]); printf("num:%d n",num); printfT(a,num); sortArr(a,num); printf("Hello Worldn"); printfT(a,num); return 0; }



