Download presentation
Presentation is loading. Please wait.
Published byΣάββας Λούλης Modified 5年之前
1
本节内容 指针类型 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
2
昆山爱达人信息技术有限公司 QQ: 1、C语言数据类型
3
1、带有*的变量类型的标准写法:变量类型* 变量名。 2、任何类型都可以带* 加上*以后是新的类型 ,统称“指针类型”。
昆山爱达人信息技术有限公司 QQ: 2、定义带“*”类型的变量 char x; short y; int z; float f; double d; Student st; char** x; short** y; int******** z; float***** f; double** d; Student* st; 总结: 1、带有*的变量类型的标准写法:变量类型* 变量名。 2、任何类型都可以带* 加上*以后是新的类型 ,统称“指针类型”。 3、*可以是任意多个。
4
3、指针变量赋值 昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864 char* x;
short* y; int* z; Student* s; x = (char*)1; y = (short*)2; z = (int*)3; s = (Student*)4; char*** x; short*** y; int*** z; Student*** s; x = (char***)1; y = (short***)2; z = (int***)3; s = (Student***)4; char********* x; short********* y; int********* z; Student********* s; x = (char*********)1; y = (short*********)2; z = (int*********)3; s = (Student*********)4; int******* x; int******* y; x = (int*******)4; y = x;
5
指针类型的变量宽度永远是4字节、无论类型是什么,无论有几个*。
昆山爱达人信息技术有限公司 QQ: 4、指针变量宽度 char x; short y; int z; x = 1; y = 2; z = 3; char* x; short* y; int* z; x = (char*)1; y = (short*)2; z = (int*)3; char********** x; short********** y; int********** z; x = (char**********)1; y = (short**********)2; z = (int**********)3; 总结: 指针类型的变量宽度永远是4字节、无论类型是什么,无论有几个*。
6
1、不带*类型的变量,++或者-- 都是加1 或者减1 2、带*类型的变量,++ 或者 -- 新增(减少)的数量是去掉一个*后变量的宽度
昆山爱达人信息技术有限公司 QQ: 5、指针类型自加和自减(++ / --) char a ; short b ; int c ; a = 100; b = 100; c = 100; a++; b++; c++; printf("%d %d %d",a,b,c); char**** a ; short**** b ; int**** c ; a = (char****)100; b = (short****)100; c = (int****)100; a++; b++; c++; printf("%d %d %d",a,b,c); 总结: 1、不带*类型的变量,++或者-- 都是加1 或者减1 2、带*类型的变量,++ 或者 -- 新增(减少)的数量是去掉一个*后变量的宽度
7
1、指针类型的变量可以加、减一个整数,但不能乘或者除. 2、指针类型变量与其他整数相加或者相减时:
昆山爱达人信息技术有限公司 QQ: 6、指针类型的加减运算 char* a ; short* b ; int* c ; a = (char*)100; b = (short*)100; c = (int*)100; a = a + 5; b = b + 5; c = c + 5; printf("%d %d %d",a,b,c); char**** a ; short**** b ; int**** c ; a = (char****)100; b = (short****)100; c = (int****)100; a = a + 5; b = b + 5; c = c + 5; printf("%d %d %d",a,b,c); 总结: 1、指针类型的变量可以加、减一个整数,但不能乘或者除. 2、指针类型变量与其他整数相加或者相减时: 指针类型变量 + N = 指针类型变量 + N*(去掉一个*后类型的宽度) 指针类型变量 - N = 指针类型变量 - N*(去掉一个*后类型的宽度)
8
7、指针类型的比较 总结: 指针类型可以做大小比较 昆山爱达人信息技术有限公司 www.bcdaren.com QQ:1250121864
char**** a ; char**** b ; a = (char****)200; b = (char****)100; if(a>b) { printf("1"); } else printf("2"); 总结: 指针类型可以做大小比较
9
<汇编、C/C++线上班>学员可见
昆山爱达人信息技术有限公司 QQ: 课后练习: <汇编、C/C++线上班>学员可见
Similar presentations