C语言 | 指针小结

C语言返回指针值的函数

在C语言中一个函数可以返回一个整型值、字符值、实型值等,也可以返回指针型的数据,即地址,其概念与以前类似,只是返回的值的类型是指针类型。

c 复制代码
一般形式

类型名 *函数名(参数列表);

C语言指针重点

首先要准确的弄清楚指针的含义,指针就是地址,凡是出现"指针"的地方,都可以用"地址"代替,变量的指针就是变量的地址,指针变量就是地址变量。

要区别指针和指针变量,指针变量的值是一个地址。

什么叫指向?

  • 地址就意味着指向,因为通过地址能找到具有该地址的对象。

要深入掌握在对数组的操作中正确地使用指针,搞清楚指针的指向。

指针变量可以用空值,即该指针变量不指向任何变量,可以这样表示:

c 复制代码
p=NULL;

其中NULL是一个符号常量,代表整数0,。在stdio.h头文件中对NULL进行了宏定义。

使用指针的优点

  • 提供程序的效率。

在调用函数时当指针指向的变量的值改变时,这些值能够为主调函数使用,即可以从函数调用得到多个可改变的值。

可以实现动态存储分配。

C语言使用指针做函数返回值

c 复制代码
#include <stdio.h>
#include <string.h>//为了使用求字符串长度strlen函数
char *strLength(char *str1, char *str2)//函数声明
int main()//主函数
{
    char str1[30],str2[30];//定义字符数组
    char *str; //定义字符指针变量
    printf("请输入两个字符串:\n");//提示语句
    gets(str1);//输入字符串str1
    gets(str2);//输入字符串str12
    str = strLength(str1, str2);//函数调用
    printf("较长的字符串是:%s\n", str);
    return 0;
}
char *strLength(char *str1, char *str2)//自定义求两个字符串较长的函数
{
  return strlen(str1)>strlen(str2)?str1:str2;
}

编译运行结果:

c 复制代码
请输入两个字符串:
xiaolin
love
较长的字符串是:xiaolin

--------------------------------
Process exited after 7.732 seconds with return value 0
请按任意键继续. . .

以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去的动力,跪谢各位父老乡亲啦~

相关推荐
Lucky_ldy11 小时前
C语言学习:数据在内存中的存储
c语言·开发语言·学习
qeen8711 小时前
【算法笔记】各种常见排序算法详细解析(上)
c语言·数据结构·c++·学习·算法·排序算法
YangWeiminPHD11 小时前
金水32051编译器下的AI8051U单片机入门:从点亮LED到“你好,世界,我来了!”
c语言·汇编·51单片机·编译器
2301_7890156211 小时前
Linux:基础指令(二)
linux·运维·服务器·c语言·开发语言·c++·算法
坚果派·白晓明20 小时前
【鸿蒙PC三方库移植适配框架解读系列】第八篇:扩展lycium框架使其满足rust三方库适配
c语言·开发语言·华为·rust·harmonyos·鸿蒙
谙弆悕博士1 天前
快速学C语言——第16章:预处理
c语言·开发语言·chrome·笔记·创业创新·预处理·业界资讯
matlabgoodboy1 天前
软件开发定制小程序APP帮代做java代码代编写C语言设计python编程
java·c语言·小程序
handler011 天前
UDP协议与网络通信知识点
c语言·网络·c++·笔记·网络协议·udp
C+++Python1 天前
C 语言 动态内存分配:malloc /calloc/realloc /free
c语言·开发语言
cen__y1 天前
Linux11(网络编程)
linux·运维·服务器·c语言·网络·网络协议·tcp/ip