博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C语言指针笔记 by STP
阅读量:4046 次
发布时间:2019-05-25

本文共 1148 字,大约阅读时间需要 3 分钟。

指针:存放变量地址的变量

作用:1.可修改函数形参的值(交换两个数的值);

            2.可以利用指针让函数有N个返回值(例如用一个方法返回sum和minus等不同的计算结果);

            3.把指向函数的指针当作参数传递给函数。

格式:

int *i;char *c;
注意:*只是一个说明符,说明该变量为指针变量,不属于变量名的一部分

错误写法:

int *p;p=100;//指针变量用来存放地址,不能赋值常量int *p;*p=200;//未指向确定地址前,不能对该指针变量赋值

1.指针和字符串:

char *p;//定义一个指针变量pchar c[] = "kristy";//定义一个字符数组p=c;//指向首字母"k"//省略定义字符数组,指针直接指向字符串char *k = "kristy";
正确写法:

char *p;p="kristy";
错误写法:

char k[6];k="kristy";//k是一个数组地址常量,不能赋值char *p = "kristy";*p = "hello";char c[]="kristy";//定义的是字符串变量!变量!变量!char *p = "kristy";//定义的是字符串常量!常量!常量!
2.指针和函数:

指向函数的指针:

//定义一个sum函数,返回两个数的和int sum(int a,int b){    return a+b;}//定义一个指向sum函数的指针pint (*p)(int a,int b) = sum;int main(){    int result = (*p)(2,3);   //int result = p(2,3);    printf("结果为:%d",result);    return 0;}
将指向函数的指针作为参数传递:

#include 
// 减法运算int minus(int a, int b) { return a - b;}// 加法运算int sum(int a, int b) { return a + b;}// 这个counting函数是用来做a和b之间的计算,至于做加法还是减法运算,由函数的第1个参数决定void counting( int (*p)(int, int) , int a, int b) { int result = p(a, b); printf("计算结果为:%d\n", result);}int main(){ // 进行加法运算 counting(sum, 8, 3); // 进行减法运算 counting(minus, 8, 3); return 0;}

转载地址:http://qczci.baihongyu.com/

你可能感兴趣的文章
flex4 中创建自定义弹出窗口
查看>>
01Java基础语法-16. while循环结构
查看>>
01Java基础语法-18. 各种循环语句的区别和应用场景
查看>>
01Java基础语法-19. 循环跳转控制语句
查看>>
Django框架全面讲解 -- Form
查看>>
socket,accept函数解析
查看>>
今日互联网关注(写在清明节后):每天都有值得关注的大变化
查看>>
”舍得“大法:把自己的优点当缺点倒出去
查看>>
[今日关注]鼓吹“互联网泡沫,到底为了什么”
查看>>
[互联网学习]如何提高网站的GooglePR值
查看>>
[关注大学生]求职不可不知——怎样的大学生不受欢迎
查看>>
[关注大学生]读“贫困大学生的自白”
查看>>
[互联网关注]李开复教大学生回答如何学好编程
查看>>
[关注大学生]李开复给中国计算机系大学生的7点建议
查看>>
[关注大学生]大学毕业生择业:是当"鸡头"还是"凤尾"?
查看>>
[茶余饭后]10大毕业生必听得歌曲
查看>>
gdb调试命令的三种调试方式和简单命令介绍
查看>>
C++程序员的几种境界
查看>>
VC++ MFC SQL ADO数据库访问技术使用的基本步骤及方法
查看>>
VUE-Vue.js之$refs,父组件访问、修改子组件中 的数据
查看>>