`

指针的高效

F# 
阅读更多
#include <stdio.h>

struct student {
	char name[200];
	int age;
};

//传递的是指针,内存里只取出四个字节的空间存放变量pst
//pst存放的是地址,通过引用可改变实参的值
//这是效率高的做法
void f(struct student *pst) {
	pst->age = 000;
	//printf("name: %s \n age: " , pst->name, pst->age);
}

//如此传递参数,传递的是整个结构体,在内存会取出一个与实参同样大小的新空间存放pst
//因此函数无法改变实参的值
//这是效率比较低的
void f2(struct student pst) {
	pst.age = 000;
}

int main(void) {
	struct student st = {"stu1", 20};
	struct student * p;
	p = &st;
	printf("%d \n", p->age);
	f2(st);
	printf("%d \n", p->age);
	f(p);
	printf("%d", p->age);
}

 

分享到:
评论

相关推荐

    如何正确认识指针,高效编程

    程序编程中指针出错率往往极大,本文教你正确认识指针以及高效使用指针,实现安全高效编程。 特别提醒:由于之前以为指针经验总结这篇文章没有上传成功,故又重新传了一次。本文内容和我之前发布的指针经验总结完全...

    彻底理解指针,指针数组和数组指针,指针函数和函数指针

    ### 彻底理解指针,指针数组和数组指针,指针函数和函数指针 #### 一、基础知识 在计算机编程中,指针是一个非常重要的概念,尤其是在C/...理解这些规则可以帮助我们更加高效地使用指针,并提高程序的性能和灵活性。

    c++程序包(结构体 文件 指针)

    在这些源代码程序中,你可以期待看到如何结合使用这些概念来解决实际问题,例如读取文件中的数据并用结构体表示,使用链表实现动态数据存储,或者通过指针高效地操作数组。通过研究这些例子,你将加深对C++语言特性...

    第8章 指针-5向函数传递字符串1

    总结一下,向函数传递字符串的关键在于理解字符数组和指针之间的关系,以及如何通过指针高效地处理字符串。在实现字符串处理函数时,应考虑使用`const`修饰符来保护字符串不被意外修改,并尝试优化循环结构以提高...

    C++智能指针 功能强大,高效

    "C++智能指针功能强大,高效" C++中的智能指针是一种功能强大的技术,它可以自动管理内存,避免内存泄露的问题。与Java、.NET等语言不同,C++没有垃圾回收机制,因此需要手动管理内存。在C++中,智能指针可以通过...

    指针,指针类型,指针函数

    通过指针,我们可以直接操作内存中的数据,这使得代码更加灵活且高效。 ### 1. 指针类型 指针类型是指指针变量所指向的数据类型。例如,如果你有一个整型变量`int a`,那么对应的指针类型就是`int *`。声明指针时,...

    C指针 C指针C指针C指针C指针C指针

    虽然它们可能初看起来复杂,但一旦熟练掌握,就可以利用它们的灵活性和效率编写出高效、复杂的程序。在学习C指针时,重点应放在理解指针的本质、如何安全地使用指针以及指针在实际编程场景中的应用上。

    c语言:我眼中的指针(教你彻底认识指针)

    在C语言中,指针是一种非常重要的数据类型,它能够存储内存地址,是进行高效内存管理的关键工具。本文将从多个角度深入探讨指针的概念及其应用,帮助读者建立起对指针的全面认识。 #### 二、什么是指针? 在C语言...

    函数指针和指针函数的区别

    在C/C++编程语言中,函数指针和指针函数是两个不同...了解和熟练掌握函数指针和指针函数的区别,能帮助我们编写更加高效和模块化的代码。在阅读和编写涉及这些概念的代码时,一定要注意它们的不同,以避免混淆和错误。

    c语言指针,指针与变量,指针与指针

    在C语言中,指针是其核心特性之一,它提供了对内存地址的直接操作,使得程序可以更加灵活高效。本文将深入探讨“指针、指针与变量、指针与数组、指针与函数以及字符串与指针”的相关知识点。 首先,让我们了解什么...

    指针的用法大全,指针与数组,指针详解

    在C/C++编程语言中,指针是至关重要的一个概念,它允许我们直接操作内存地址,从而实现高效的数据处理和灵活的程序设计。本篇文章将深入探讨指针的用法,包括指针与数组的关系以及指针的详细解析。 首先,我们需要...

    windows vista鼠标指针

    Vista引入了许多新特性和改进,旨在提供更安全、更美观以及更高效的用户体验。其中,鼠标指针是用户界面的重要组成部分,它们直接影响到用户的交互体验。 在Windows Vista中,微软对鼠标指针进行了视觉更新,使其...

    指针函数和函数指针变量

    了解和熟练掌握指针函数和函数指针变量是C语言高级编程的关键,它们能帮助我们编写更加灵活和高效的代码。在阅读提供的《函数指针.pdf》和《C语言教程之 指针.PDF》文档时,你可以深入学习这两个概念的细节,包括...

    指向指针的指针 word

    在C语言中,指针是一种强大的工具,可以用来操作内存和高效地处理数据结构。本文将深入探讨指针数组和指向指针的指针的概念,以及它们在实际编程中的应用。 首先,我们要明白指针数组的基本概念。一个指针数组是由...

    指针的奥秘,神奇的指针

    理解指针的这些特性对于编写高效且内存安全的代码至关重要。在使用指针时,需要清楚地知道指针的类型、它指向的类型、其值以及它占据的内存大小。这些都是编程时需要时刻关注的核心问题。熟练掌握指针,能够让你更好...

    C++指针——数组指针/函数指针

    在C++编程语言中,指针是至关重要的概念,它允许我们存储内存地址并直接操纵内存。本篇文章将深入探讨两种特殊...通过实践,你可以更好地掌握如何在C++中有效地利用数组指针和函数指针,从而编写出更灵活和高效的程序。

    C语言指针详解 C语言指针详解

    通过理解指针的类型、所指向的类型、指针的值(内存地址)和指针自身占用的内存,我们可以更好地控制程序的运行,实现高效的数据处理。然而,使用指针时务必小心,避免出现未初始化的指针、空指针引用、越界访问等...

    指针深入理解 指针深入理解

    在计算机编程领域,尤其是C和C++语言中,指针是一个核心概念,它提供了对内存地址的直接访问能力,是实现高效数据处理和复杂算法的关键。本文将从多个角度深入探讨指针的概念、类型、操作及其在实际编程中的应用。 ...

    c和指针非扫描版-源代码-课后习题答案_C和指针_c和指针非扫描版-源代码-课后习题答案_c和指针源代码_

    5. **指针和数组**:两者在C语言中紧密关联,通过指针可以对数组进行高效操作,比如遍历、排序等。 6. **函数指针**:函数指针可以作为参数传递,也可以作为返回值,这在实现回调函数、函数工厂等高级编程技巧时...

Global site tag (gtag.js) - Google Analytics