时间:2021-05-02
C和指针
相关基础知识:内存的分配(谭浩强版)
1、整型变量的地址与浮点型/字符型变量的地址区别?(整型变量/浮点型变量的区别是什么)
2、int *p,指向整型数据的指针变量。
3、通过指针变量访问整型变量。
4、*p :指针变量p指向的存储单元(变量)
5、p = &a——>> *p = *&a
6、用指针作函数参数
7、调用函数中,由于虚实结合是采用单向的“值传递”方式,只能从实参向形参传数据,形参值的改变无法回传给实参。
8、引用一个数组元素可以用(1)下标法(2)指针法(占内存小,运行速度快)
9、指针提高效率在那些方面?(内存,运行时间??)
10、如果指针变量p已指向数组中的一个元素,则p+1指向同一数组中的下一个元素。
11、用指针变量作函数形参接受数组地址。数组指针和指针数组的区别
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 #include"iostream" using namespace std; int main() { void sort(int *p,int n); int a[5],i; cout<<"input array:"<<endl; for(i=0;i<5;i++) cin>>a[i]; cout<<endl; sort(a,5); cout<<" the sorted array:"<<endl; for(i=0;i<5;i++) cout<<a[i]<<" "; cout<<endl; return 0; } void sort(int *p,int n) { int i,j,k,temp; for(i=0;i<n-1;i++) { k=i; for(j=i+1;j<n;j++) if(*(p+j)<*(p+k)) k=j; temp=*(p+k); *(p+k)=*(p+i); *(p+i)=temp; } }12、一个int占多少个字节?
13、实参和形参的结合有一下4种形式:
实参 形参 数组名 数组名 数组名 指针变量 指针变量 数组名 指针变量 指针变量14、实参数组名a代表一个固定的地址,或者说是指针常量,因此其值不可改变;形参数组名是指针变量,可以改变。// a++ //语法错误,不可改变
15、字符串与指针。字符串数组/字符串变量/字符指针存放字符串。
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 //test_3 指针存放字符串 #include<iostream> using namespace std; // #include<string> //字符串变量 int main() { char str1[]="I Love C++",str2[20],*p1,*p2; p1=str1; p2=str2; for(;*p1!='\0';p1++,p2++) *p2=*p1; *p2='\0'; p1=str1; p2=str2; cout<<"str1 is "<<p1<<endl; cout<<"str2 is "<<p2<<endl; return 0; }16、函数与指针。函数的入口地址就称为函数的指针。
1)、用函数指针调用函数
函数类型 (*变量名)(函数形参表)
? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #include<iostream> using namespace std; int main() { int max(int x, int y); int (*p)(int,int); int a,b,m; p=max; cin>>a>>b; m=p(a,b); cout<<"max is "<< m<<endl; return 0; } int max(int x,int y) { int z; if (x<y) z=y; else z=x; return(z); }2)、用指向函数的指针作函数参数。
3)、返回指针值的函数:指针函数。
类型名 *函数名(参数列表);int *a( int x,int y);
17、
1)、指向常量的指针(不允许通过指针变量修改它指向的对象的值)
const 类型名 *指针变量名
2)、常指针(指定指针变量的值为常量,即指针变量的指向不可改变)
类型名 *const 指针变量名
Tips:必须在定义是初始化,指定其指向。
指针变量的指向不可改变,但指针变量的指向变量的值可以改变。*p2=12;//合法
注意(const和*的位置)。const在*后面,请与定义指向常变量的指针变量的形式比较。
3)、指向常量的常指针(指针变量指向一个固定的对象,该对象的值不能改变)。
const 基本类型名 *const 指针变量名
18)、void指针类型
以上这篇C和指针小结(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
C++有关指针的数据类型和指针运算的小结前面已用过一些指针运算(如p++,p+i等),现在把全部的指针运算列出如下。1)指针变量加/减一个整数例如:p++,p-
指针类型是C++中一个内容非常丰富的东西,掌握好它,对学习和理解C++有着非常重要的影响。下面介绍C++中两种函数指针和指向指针的指针数组的表示方法。(1)in
C语言中值传递和指针传递实例详解在C语言中,函数的参数和返回值的传递方式有两种:值传递和指针传递。值传递和指针传递初学者总会有一种朦胧的感觉,所以建议把指针传递
1.指针的数据类型小结有关指针的数据类型定义含义inti;定义整形变量int*p;定义只想整型数据的指针变量pinta[n];定义整形数组a,它有n个元素int
C++中指针和引用的区别指针和引用在C++中很常用,但是对于它们之间的区别很多初学者都不是太熟悉,下面来谈谈他们2者之间的区别和用法。1.指针和引用的定义和性质