不理解指针

时间:2014-02-14 02:21:41

标签: c pointers

我有以下C程序。

#include <stdio.h>
int main()
{
    int *p, *q;
    *p=5;
    *q=6;
    printf("%d %d", *p, *q);
    return 0;
}

代码未运行。这个代码怎么了?

1 个答案:

答案 0 :(得分:1)

您的指针未初始化,需要使用malloc指向有效内存或获取本地变量的地址。

#include <stdio.h>
int main()
{
    int p, q;
    int *pp = &p;
    int *pq = &q;
    *pp=5;
    *pq=6;
    printf("%d %d", *pp, *pq);
    return 0;
}

会起作用。