易截截图软件、单文件、免安装、纯绿色、仅160KB

C的文件指针

C/C++ code:

#include <stdio.h>

FILE *myfopen(char *name)
{
FILE *fp=fopen(name,"w");
fprintf(fp,"abcdefg");
return fp;
}

int main()
{
FILE *fptr=myfopen("example.txt");
fprintf(fptr,"ABCDEFG");
fclose(fptr);

return 0;
}



自定义函数里的文件指针fp不属于局部变量指针么?
这个指针在局部,又不是说它指向的东西在局部……

属于局部变量指针,但是,通过调用fopen,实际上动态分配了一段资源,这个资源可以通过fp的值返回给调用者,调用者知道这个值就可以找到动态分配的资源,没有问题的。

其实和下面的一样,你就觉得不奇怪了
C/C++ code:

int fun()
{
int i = 0;
// process with i
return i;
}



引用

这个指针在局部,又不是说它指向的东西在局部……


没看懂你说的什么意思...

引用

这个指针在局部,又不是说它指向的东西在局部……


没看懂你说的什么意思...

引用

这个指针在局部,又不是说它指向的东西在局部……


没看懂你说的什么意思...

通过return语句把文件返回了。3楼的例子是很好的解释



相关问答:

linux环境下gethostbyname函数问题 - C/C++ / C语言

写了个测试程序如下
   
  struct hostent *hp; 
char AlarmDevIP[20];  
  int x2;

hp = gethostbyname("www.google.com");
if (hp)
{ ......

execl怎么调用java程序 - C/C++ / C语言

如题,C/C++中的execl怎么调用写好的java程序,
execl("/opt/java1.5/bin/java","MyClass",NULL);
这样的不行哦。

不会.

运行java程序
找工具查看一下那个程序的命令行

搜索下:jni ......

C/S项目架构设计----求助 - Java / Java SE

本人正在用Java做一个C/S架构的项目, 
可是由于项目比较大,前期对架构的设计尤其重要,因为后期可能随时会加个功能或者去掉某些功能。 
所以特地寻求如何设计C/S的架构使程序更加面向对象更加易于维 ......

c静态编译另一个文件夹的库函数 - C/C++ / C语言

在根目录/lib中存放一个log.c,log.h,并用下面的语句:
gcc -c log.c
ar crv liblog.a log.o
编译出一个liblog.a静态库,然后在文件夹:/testfile中创建一个test.c和testc.c,test.c中引用了testc.c中定义的方法 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号