0 / 0 / 0
Регистрация: 07.12.2017
Сообщений: 4
1

Реализация передачи значения переменной по указателю в подпрограмму(функцию)

10.12.2018, 02:21. Показов 591. Ответов 2

Author24 — интернет-сервис помощи студентам
Вопрос собственно заключается в том ,как с помощью указателя передать в подпрограмму определенное значение.
Я сделал так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
 
int min,max,z;
float g;
int i;
 
void G(double *a);
//void V(int *b); 
 
int main ()
{
    int N;
    double x=0.5;
    min=0;
    max=2*3.14;
    z=(max-min)/N;
    double *a=&x;
// int *b=&i;
    G(a);
    printf ("%d\n",*a);
}
 
void G(double *x)
{
     g=sin(*x)+0.5*(sin(*x*2));
     printf ("g=%d\n",g);
}
Но выдает страшное значение функции g= -2147483648
Где я ошибаюсь ? (помогите несчастному студенту)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.12.2018, 02:21
Ответы с готовыми решениями:

Составить подпрограмму-процедуру для вычисления текущего значения s(x) с произвольным количеством итераций n и подпрограмму-функцию y(x).
помогите пожалуйста с написанием работы Решить задачу, используя подпрограмму-процедуру для...

Присвоение значения указателю на функцию
Есть укзатель на функцию. Есть перегруженная функция. как присвоить указателю нужный нам вариант...

Запись значения по указателю, переданному в качестве аргумента в функцию
Всем привет! Помогите плиз с проблемкой, либо скажите что это не реально)) Добавлено через 2...

Запись значения переменной во внешний файл (через подпрограмму)
Есть модуль (VBA Excel): Sub Main_macros() Dim id As Integer id = Cells(1, 1) Sub_macros

2
603 / 403 / 212
Регистрация: 30.04.2017
Сообщений: 743
10.12.2018, 11:41 2
%f - для вывода float/double
printf ("g=%f\n",g);
0
0 / 0 / 0
Регистрация: 07.12.2017
Сообщений: 4
10.12.2018, 15:04  [ТС] 3
Это я уже заметил,теперь новая ошибка
в 31
C
1
 I = I + G((double *)V((int *)i))*z;
пишет,что преобразование к типу указателю невозможно
мне надо сделать так, чтобы из подпрограмм возвращались значения по указателю в такую вот сложную функцию.

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <time.h>
 
double min,max,z;
double g;
int i = 0;
double x;
 
double G(double *a);
double V(int *b);
 
int main ()
{
    system ("chcp 1251");
    clock_t t1, t2;
    double I,t;
    int N=100;
    min=0;
    max=2*3.14;
    z=(max-min)/N;
    int *b=&i;
    // V(b);
    double *a=&x;
    //G(a);
    t1 = clock();
    I=0;
    for (i = 1; i < N; i++)
    {
        I = I + G((double *)V((int *)i))*z;
    }
    t2 = clock();
    t = ((double)(t2 - t1) / CLOCKS_PER_SEC) * 1000;
}
 
double G(double *x)
{
     g=sin(*x)+0.5*(sin(*x*2));
     printf ("Значение функции g=%lf\n",g);
     return g;
}
 
double V(int *i)
{
 x = min+z*(*i - 1);
 printf ("Значение x=%lf\n",x);
 return x;
}
0
10.12.2018, 15:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.12.2018, 15:04
Помогаю со студенческими работами здесь

Как передать из функции пользователя в главную функцию значения по ссылке и указателю
Доброго дня, форумчане, столкнулся с проблемой, задание на лабораторной: Найти произведение и...

Куда именно копируется значения аргумента при передачи в функцию?
Куда именно копируется значения аргумента при передачи в функцию? И куда(где:) ) деваются эти копии...

Составить подпрограмму-функцию нахождения минимального значения элемента в одномерном массиве
привет, прошу помочь с программой, так как сам плохо понимаю массивы, а задание весьма интересное.....

Преобразование значения переменной (long) через функцию в значения структуры
Я недавно начал заниматься С++ и программированием в целом. Вот у меня такая проблема. В этой...

Вычислить значение выражения. Написать подпрограмму-процедуру и подпрограмму-функцию
Даны действительные s,t. Вычислить \frac{{h}^{4}(s,t)+h(1,{s}^{2}+{t}^{2})}{1+{h}^{2}(st+1)}, ...

Помогите разобраться(С)Cпособы передачи аргументов в вызываемые функции: по значению, указателю и ссылке
Вычисление текущих значений Y(x) и S(x) (где x принадлежит диапазону ) реализовать в виде отдельных...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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