Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
47 / 47 / 42
Регистрация: 17.10.2011
Сообщений: 136
1

Вывести на экран значение указателя Р2 и значение на которое он ссылается

22.02.2012, 20:22. Показов 2161. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
задание таково: Присвоить раз именованному указателю на тип Р1 значение арифметиче-ского выражения АВ включающего указатели на типы Р2 и Р3. Арифметическое выражение реализовать в виде функции возвраща ющей указатель на тип Р1. Вывести на экран значение указателя Р2 и значение на которое он ссылается.
p1 - long int; p2 - unsigned long int; p3 - int
ab = (1/sin(p2))^p3

ошибку выдаёт и не могу с этим разобраться!
помогите плииз

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
int main()
{
   double ab;
   unsigned long int p2=5;
   int p3=3;
 
   long int *pi1; 
   unsigned long int *pi2;
   int *pi3;
 
   pi2=&p2;
   pi3=&p3;
   ab=pow(1/sin(p2),p3);
   pi1=&ab;
   printf("&pi1= %p pi1=%4lf\n",pi1,*pi1);
   getch();
   return 0;
}
ошибка: cannot convert `double*' to `long int*' in assignment
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.02.2012, 20:22
Ответы с готовыми решениями:

Вывести на экран значение указателя Р2 и значение на которое он ссылается
Помогите , пожалуйста... Присвоить раз именованному указателю на тип Р1 значение...

Откуда берется значение указателя после удаления памяти на которую он ссылается?
Всем привет. Почему при удалении памяти указатель еще работает? Пример программы: #include...

Функция возвращает не ссылку а само значение переменной на которое оно ссылается
Скажите пожалуйста есть функция `int&amp; my(){return a} которая возвращает ссылку если возвращаемое...

Вывести на экран номер и значение элементов массива, абсолютное значение которых < 15
Сделайте задачу про массивы, по блок-схеме

11
Псевдослучайный
1946 / 1145 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
22.02.2012, 20:30 2
pi1 указывает на long int, а в формате вывода написано %lf, то есть double(кстати, модификатор l к вещественному типу не применяется, только строчное L и это будет long double). Ну и расчет не соответствует заданию, не наблюдаю в 17 указателей.
1
47 / 47 / 42
Регистрация: 17.10.2011
Сообщений: 136
22.02.2012, 20:42  [ТС] 3
NoMasters,
вот вроде исправил но всё-равно ошибка...
что еще не так??
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
int main()
{
   double ab;
   unsigned long int p2=5;
   int p3=3;
 
   long int *pi1; 
   unsigned long int *pi2;
   int *pi3;
 
   pi2=&p2;
   pi3=&p3;
   ab=pow(1/sin(*p2),*p3);
   pi1=&ab;
   printf("&pi1= %Li \n pi1=%Li\n",pi1,*pi1);
   getch();
   return 0;
}
0
35 / 35 / 11
Регистрация: 25.05.2010
Сообщений: 211
22.02.2012, 20:48 4
C++
1
 ab=pow(1/sin(*p2),*p3);
что ето??зачем тут* ?
0
47 / 47 / 42
Регистрация: 17.10.2011
Сообщений: 136
22.02.2012, 20:51  [ТС] 5
vetal10, разыменованные указатели
0
Псевдослучайный
1946 / 1145 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
22.02.2012, 20:52 6
У ты кладешь в указатель на long int адрес double. Ну и для целых типов в формате модификатор l таки в нижнем регистре в отличие от

Добавлено через 57 секунд
Цитата Сообщение от Slim_py Посмотреть сообщение
разыменованные указатели
ну так ты не к указателям применяешь его как бы
0
47 / 47 / 42
Регистрация: 17.10.2011
Сообщений: 136
22.02.2012, 21:00  [ТС] 7
NoMasters, блииииин капецй какой-то...

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
int main()
{
   long int ab;
   unsigned long int p2=5;
   int p3=3;
 
   long int *pi1; 
   unsigned long int *pi2;
   int *pi3;
 
   pi2=&p2;
   pi3=&p3;
   ab=pow(1/sin(*pi2),*pi3);
   pi1=&ab;
   printf("&pi1= %li \n pi1=%li\n",pi1,*pi1);
   getch();
   return 0;
}
вот так вроде, да?
0
35 / 35 / 11
Регистрация: 25.05.2010
Сообщений: 211
22.02.2012, 21:08 8
C++
1
2
unsigned long int p2=5;
   int p3=3;
не указатели
0
Псевдослучайный
1946 / 1145 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
22.02.2012, 21:11 9
Slim_py, вроде того, хотя нужность промежуточной переменной ab сомнительна.
1
47 / 47 / 42
Регистрация: 17.10.2011
Сообщений: 136
22.02.2012, 21:23  [ТС] 10
NoMasters, в задании так сказано...

Добавлено через 9 минут
NoMasters, а почему ответ такой страшный получается...?
0
0 / 0 / 0
Регистрация: 16.02.2012
Сообщений: 18
22.02.2012, 21:26 11
А почему нельзя все записать в формате double ?
0
Псевдослучайный
1946 / 1145 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
22.02.2012, 21:27 12
Нормальный ответ, хотя адрес привычней видеть в шестнадцатеричном виде.
0
22.02.2012, 21:27
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.02.2012, 21:27
Помогаю со студенческими работами здесь

Вывести на экран номер и значение элементов массива, абсолютное значение которых > 10
Помогите с задачей . Вот условие 3.*Дан одномерный массив размерностью 9, заполненный целыми...

Вывести на экран значение t при котором функция x(t) принимает максимальное значение
Объясните, как решить с помощью массива. Только начал изучать C++. Знаю, как вывести максимальный...

Значение наибольшего из трех параметров a, b, c вывести на экран монитора, если это значение >x и <(a+b)
Значение наибольшего из трех параметров a, b, c вывести на экран монитора, если это значение &gt; x и...

вывести значение указателя в cout
Как вывести значение указателя str1 для оператора cout ? пример: #include &lt;iostream&gt; char...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru