案例:通过传递指针值读取内存中的数

一、
指针:
百科释义:
指针(Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元。因此,将地址形象化的称为“指针”。
Wiki:
a pointer is a programming language object, whose value refers to (or “points to”) another value stored elsewhere in the computer memory using its memory address.

二、关于在传输指针的过程中是否需要加 ‘&’
指针本身的值就是指向电脑存储器中另一个地方的值。故只需要将其传输至另外一处,再对其引用即可。
指针使用案例-C/C++中使用指针出现过的误区

案例:char *s 和char s[]的区别

char *s :
s是指针,指向内存中一块区域(存放在常量区),其指向的空间大小可变,但是如果其内容是常量字符串,则一般编译器是不允许修改其内容值的。

char s[]:
s指向数组的内存区域,其区域大小随数组而定,不可修改,但是可以修改其值,存放在栈区,随程序生命周期变化。

eg:
char *s1 = “hello”;
char s2[] = “hello”;

s1 = s2; //ok
s2 = s1; //error s2指向已定,不能修改

strcat(s1, s2); //error : s1指向的常量区不能修改
stecat(s2, s1); //ok

案例:函数返回的指针什么时候释放

http://www.cnblogs.com/khler/archive/2010/09/23/1833458.html

最好的就是那里使用那边释放,不要留到外面释放。

可以使用静态变量,但是有线程不可重入的问题。

相关文章:

  • 2021-12-27
  • 2021-07-25
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-03
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-14
  • 2021-09-20
  • 2022-12-23
  • 2021-07-31
  • 2021-05-13
相关资源
相似解决方案