2014-02-14 3 views
0

У меня есть программа C.Неиспользуемый указатель

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

Код не работает. Что не так с этим кодом?

+0

Для справки в будущем, а не «Код не работает», сообщите нам, как он терпит неудачу. Если есть сообщение об ошибке, скопируйте и вставьте его в свой вопрос. В этом случае проблема была достаточно простой, но в следующий раз она может и не быть. –

+0

[comp.lang.c FAQ] (http://www.c-faq.com/) - отличный ресурс. Раздел 4 охватывает указатели. –

ответ

1

Ваш указатель не инициализирован, они должны указывать на действительную память с помощью malloc или путем ввода адреса локальной переменной.

будет работать.

+0

Как я могу их инициализировать? –

+0

Отредактировал мой ответ. Показывается только локальная переменная, хотя я не понимаю, почему вы должны использовать новую для этого случая. –

+0

У меня вопрос. Может ли указатель удерживать только адрес памяти? –

Смежные вопросы