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
请按任意键继续. . .

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

相关推荐
ankleless28 分钟前
C语言(02)——标准库函数大全(持续更新)
c语言·开发语言·算法·标准库函数·零基础自学
玖剹41 分钟前
Linux文件系统:从内核到缓冲区的奥秘
linux·c语言·c++·笔记·ubuntu
范纹杉想快点毕业1 小时前
基于 C 语言视角:流程图中分支与循环结构的深度解析
c语言·stm32·单片机·设计模式·架构·流程图·uml
l1t1 小时前
修改DeepSeek翻译得不对的V语言字符串文本排序程序
c语言·开发语言·python·v语言
凤年徐1 小时前
【数据结构与算法】21.合并两个有序链表(LeetCode)
c语言·数据结构·c++·笔记·算法·链表
玄月初二丶12 小时前
28. 找出字符串中第一个匹配项的下标
c语言·开发语言·数据结构·算法
小猪扒饭12 小时前
C基础 12_day
c语言·笔记·学习·算法
屁股割了还要学14 小时前
【数据结构入门】时间、空间复杂度的计算
c语言·开发语言·数据结构·c++·算法
DIY机器人工房16 小时前
【科普】在STM32中有哪些定时器?
c语言·嵌入式·定时器·diy机器人工房
sheepwjl18 小时前
《嵌入式C语言笔记(十七):进制转换、结构体与位运算精要》
linux·c语言·开发语言·笔记·算法