指针变量的定义和初始化[c][code]
原帖:
http://hi.baidu.com/pepsi360/blog/item/cc74be4412cf6789b3b7dcd4.html
#include <stdio.h>
struct Node
{
int a;
char b[10];
Node *next;
};
main(void)
{
char *p=NULL; //"define NULL 0" included in <stdio.h>
int *q=0; //值0是唯一能够直接赋给指针变量的整数值
double *d;
Node *pNode=NULL;
d=NULL;
return 0;
}
以上代码在VC环境下调试运行。
step1. 运行完语句Node *pNode=NULL;后:
Name Value
+ &p 0x0012ff7c ""
+ &q 0x0012ff78 ""
+ &d 0x0012ff74 ""
+ &pNode 0x0012ff70 ""
Memory:
0012FF66 CC CC CC CC CC CC CC CC CC CC 00 烫烫烫烫烫.
0012FF71 00 00 00 CC CC CC CC 00 00 00 00 ...烫烫....
0012FF7C 00 00 00 00 C0 FF 12 00 39 11 40 ........9.@
step2. 运行完语句d=NULL;后:
Name Value
+ &p 0x0012ff7c ""
+ &q 0x0012ff78 ""
+ &d 0x0012ff74 ""
+ &pNode 0x0012ff70 ""
Memory:
0012FF66 CC CC CC CC CC CC CC CC CC CC 00 烫烫烫烫烫.
0012FF71 00 00 00 00 00 00 00 00 00 00 00 ...烫烫....
0012FF7C 00 00 00 00 C0 FF 12 00 39 11 40 ........9.@
在Turbo C中的代码如下:
#include <stdio.h>
struct Node
{
int a;
char b[10];
struct Node *next; /* struct不能少 */
};
main(void)
{
char *p=NULL; /* "define NULL 0" included in <stdio.h> */
int *q=0;
&
相关文档:
第一篇:typedef struct与struct的区别
1. 基本解释
typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型
(struct等)。
在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明 ......
VC2005中C运行时库选择不当导致的链接问题及解决方案
在Microsoft Visual C++ 2005中,如果一个EXE主工程应用程序要使用一个或几个静态LIB库,那么链接时经常会遇到符号重复定义的错误,如果排除库不当又会遇到找不到某些符号的问题,如果强制使用 /force选项链接过去又可能发生一些意想不到的运行时问题。
  ......
. 编译单元(模块):
在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR), 因为它不像编译错误那样可以给出你程序错误的具体位置,你常常对这种错误感到懊恼,但是如果你经常使用gcc,makefile等工具在linux或者嵌入式下做开发工作的 ......
使用 gperf 实现高效的 C/C++ 命令行处理
GNU 完美(gperf)散列函数生成器简化复杂的输入字符串
文档选项
级别: 中级
Arpan Sen
(arpan@syncad.com
), 技术主管, Synapti Computer Aided Design Pvt Ltd
2007 年 9 月 10 日
GNU 的 gperf 工具是一种 “完美的” 散列函数,可以为用户提供的一组特 ......
C专家编程 精编之一 第一章~第三章
C的复杂之处 在于它的指针 ,但是比其指针更为复杂的是它的声明 !!!
你能看懂它们的意思 吗?
apple=sizeof(int)*p ; apple=sizeof * p;
j= (char (*)[20])malloc(20);
int const * grape; 与 int * const gr ......