Работа с указателями - код не работает в Visual Studio 2012 - C (СИ)
Формулировка задачи:
Нужно помощь, дан код программы с указателями. Когда пишу код в Visual 2012, то при выводе на экран выдается ошибка (на скрине). Когда ввожу тот же самый код в Dev_C++, то программа нормально работает (результат на скрине).
Почему Visual выдает ошибку, а dev_C++ нет? в чем проблема?
Листинг программы
- #include<stdio.h>
- #include<conio.h>
- int main(void)
- {
- int *a, b;
- float *x, y=3.5;
- double *m, n;
- void *c;
- printf ("&a=%p, &b=%p, &x=%p, &y=%p, &m=%p, &n=%p\n", &a, &b, &x, &y, &m, &n);
- a=&b;
- printf(" Enter b = ");
- scanf("%d", a);
- x=&y;
- printf(" a = %p\tb = %d\n", a, b);
- getch();
- b-=y;
- printf(" a = %p\t*a = %d\tb = %d\n", a, *a, b);
- getch();
- m=(double*)a;
- printf(" a = %p\tm = %p\n", a, m);
- getch();
- m=&n;
- printf(" n = %p\tm = %p\n", &n, m);
- getch();
- n=5.5;
- m+=2;
- printf(" n = %lf\tn = %p\tm = %p\n", n, &n, m);
- getch();
- *m=(float)*a-n+(int)*x;
- printf(" m = %p\t*m = %lf\n", m, *m);
- getch();
- m-=2;
- printf(" n = %lf n = %p m = %p *(m+2) = %lf\n", n, &n, m, *(m+2));
- printf ("a=%p, b=%d, x=%p, y=%lf, m=%p, n=%lf\n", a, b, x, y, m, n);
- getch();
- return 0;
- }
Решение задачи: «Работа с указателями - код не работает в Visual Studio 2012»
textual
Листинг программы
- m+=2;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д