Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Mantissa
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 6
#1

cannot convert 'int' to 'int*' - C++

19.01.2011, 20:52. Просмотров 1629. Ответов 15
Метки нет (Все метки)

Дорогие форумчане, помогите, пожалуйста. В программе возникает ошибка cannot convert 'int' to 'int*'.
http://www.cyberforum.ru/cpp-beginners/thread1123521.html
ошибка возникает в строке:
C++
1
2
3
4
5
6
7
8
9
y=p(1,A[7])+p(t-1), A[7])+pow((p(s+t,A[7])),2);
 
// p -это функция:
 
int p(int x, int A[7]) {
int h;
h=(A[0]*pow(x,6))+(A[1]*pow(x,5))+(A[2]*pow(x,4))+(A[3]*pow(x,3))+(A[4]*pow(x,2))+(A[5]*x)+A[6];
 
return h;}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.01.2011, 20:52
Я подобрал для вас темы с готовыми решениями и ответами на вопрос cannot convert 'int' to 'int*' (C++):

Сannot convert ‘int (*)[10]’ to ‘int*’ for argument ‘4’ to ‘int
Все вроде правильно..И в визуале работает а на линуксе(код блок) не работает.....

ОШИБКА [Error] cannot convert 'int*' to 'float*' for argument '1' to 'void Syma(float*,int*,int)
Какая то проблема с указателями,незнаю,не хочет щитать суму парних чисел в...

Cannot convert int to int* и обратно
В общем есть код:...

E2034 Cannot convert 'int *' to 'int'
Помогите разобраться,почему вылазит ошибка Unit1.cpp(34): E2034 Cannot...

Error LNK2019: unresolved external symbol "public: __thiscall Vector<int>::Vector<int>(int,int,int)" (?0?$Vec
Вот есть заголовочный файл // Заголовочный файл Vector.h #ifndef VECTOR_H...

15
killboss
61 / 61 / 3
Регистрация: 18.12.2010
Сообщений: 127
19.01.2011, 20:58 #2
А можно проект полностью???
0
ISergey
Maniac
Эксперт С++
1407 / 918 / 148
Регистрация: 02.01.2009
Сообщений: 2,744
Записей в блоге: 1
19.01.2011, 20:59 #3
Код
y=p(1,A)+p(t-1, A)+pow((p(s+t,A)),2);
0
Mantissa
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 6
19.01.2011, 21:42  [ТС] #4
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
//---------------------------------------------------------------------------
 
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
long int p(int x, int A[6]) { int h;
h=(A[0]*pow(x,6))+(A[1]*pow(x,5))+(A[2]*pow(x,4))+(A[3]*pow(x,3))+(A[4]*pow(x,2))+(A[5]*x)+1;
return h;
  }
 
  int y, t, s, i;
  int A[6];
int main()
{
clrscr();
printf(" enter s");
scanf(" %d", &s);
printf("\n enter t");
scanf("%d", &t);
printf("\n enter massive of koefficients a");
for (i=0; i<6; i++ ){
printf("\n vvedi element yacheiki");
scanf("%d", &A[i]);
//cout<<"A["<<i<<"]"; cin>>A[i];
}
 
y=p(1, A[6])+p(t-1, A[6])+pow((p(s+t,A[6])),2);
printf("\n p= %d", y);
 
 
 getch();
 
}
//---------------------------------------------------------------------------
Добавлено через 13 минут
Суть программы состоит в том, чтобы выражение "у" вычислялось из функции "р". Коэффициентами для функции являются элементы одномерного массива.
0
killboss
61 / 61 / 3
Регистрация: 18.12.2010
Сообщений: 127
19.01.2011, 22:20 #5
Вот:
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
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
long int p(float x, int A[]) 
{ 
    int h;
    h=(A[0]*pow(x,6))+(A[1]*pow(x,5))+(A[2]*pow(x,4))+(A[3]*pow(x,3))+(A[4]*pow(x,2))+(A[5]*x)+1;
    return h;
};
 
  
 
int _tmain(int argc, _TCHAR* argv[])
{
    int y, t, s, i, A[6]; //Для поддержания инкапсуляции
    printf("Enter s: ");
    scanf(" %d", &s);
    printf("\nEnter t: ");
    scanf("%d", &t);
    printf("\nEnter massive of koefficients a.");
    for (i=0; i<6; i++ )
    {
        printf("\nVvedi element yacheiki: ");
        scanf("%d", &A[i]);
    };
    int y1, y2; 
    float y12;
    y1 = p(1, A)+p(t-1, A);
    y12 = p(s+t,A);
    y2 = pow(y12, 2);
    y = y1 + y2;
    printf("\np = %d.", y);
    getch();
    return 0;
};
В зависимости от проекта:
1). Можно не включать
C++
1
#include "stdafx.h"
2). Ну и сама Main()!
1
Mantissa
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 6
19.01.2011, 22:44  [ТС] #6
Спасибо, вы мне очень помогли. Вот только одно хотела спросить (в программировании новичок), разбивание выражения "у" принципиально или его можно объеденить?
0
killboss
61 / 61 / 3
Регистрация: 18.12.2010
Сообщений: 127
19.01.2011, 22:53 #7
Цитата Сообщение от Mantissa Посмотреть сообщение
Спасибо, вы мне очень помогли. Вот только одно хотела спросить (в программировании новичок), разбивание выражения "у" принципиально или его можно объеденить?
Да пренципиально, т.к. pow() принемает только значения!!!
0
Mantissa
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 6
19.01.2011, 23:32  [ТС] #8
Возник еще один вопрос, как заставить её отображаться. Файл компилируется, builder моргает и всё. При запуске исполнительного файла реакции не наблюдается никакой...
0
killboss
61 / 61 / 3
Регистрация: 18.12.2010
Сообщений: 127
19.01.2011, 23:49 #9
С чем вы работате (Visual Studio, C++ Builder и т.д.) и можно конкретнее вопрос поставить?
0
ISergey
Maniac
Эксперт С++
1407 / 918 / 148
Регистрация: 02.01.2009
Сообщений: 2,744
Записей в блоге: 1
19.01.2011, 23:51 #10
killboss,
Цитата Сообщение от Mantissa Посмотреть сообщение
builder моргает и всё.
0
killboss
61 / 61 / 3
Регистрация: 18.12.2010
Сообщений: 127
19.01.2011, 23:53 #11
Цитата Сообщение от ISergey Посмотреть сообщение
killboss,
Гы!!!

Скиньте Ваш код целиком!!!
0
Mantissa
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 6
20.01.2011, 00:12  [ТС] #12
Да, я работаю с C++ Builder 6. Во время выполнения программы диалога никакого не происходит, т.е. программа будто выполняется и всё.

Добавлено через 10 минут
Вся программа была написана выше.
0
killboss
61 / 61 / 3
Регистрация: 18.12.2010
Сообщений: 127
20.01.2011, 00:40 #13
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
//---------------------------------------------------------------------------
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <math.h>
 
long int p(float x, int A[]) 
{ 
        int h;
        h=(A[0]*pow(x,6))+(A[1]*pow(x,5))+(A[2]*pow(x,4))+(A[3]*pow(x,3))+(A[4]*pow(x,2))+(A[5]*x)+1;
        return h;
};
 
  
 
int main()
{
        int y, t, s, i, A[6]; //Для поддержания инкапсуляции
        printf("Enter s: ");
        scanf(" %d", &s);
        printf("\nEnter t: ");
        scanf("%d", &t);
        printf("\nEnter massive of koefficients a.");
        for (i=0; i<6; i++ )
        {
                printf("\nVvedi element yacheiki: ");
                scanf("%d", &A[i]);
        };
        int y1, y2; 
        float y12;
        y1 = p(1, A)+p(t-1, A);
        y12 = p(s+t,A);
        y2 = pow(y12, 2);
        y = y1 + y2;
        printf("\np = %d.", y);
        getch();
        return 0;
};
Добавлено через 17 минут
Ну что ... работаить?
Не имею возможности проверить, т.к. работаю в Visual Studio, а не C++ Builder 6!!!
0
Mantissa
0 / 0 / 0
Регистрация: 19.01.2011
Сообщений: 6
20.01.2011, 00:43  [ТС] #14
Спасибо, заработало.

Добавлено через 2 минуты
Вышло так, что _tmain() не воспринималась вообще. Как я поняла, проблема была в типах данных для некоторых переменных?
0
killboss
61 / 61 / 3
Регистрация: 18.12.2010
Сообщений: 127
20.01.2011, 00:44 #15
Цитата Сообщение от Mantissa Посмотреть сообщение
Спасибо, заработало.
Для этого кнопочки есть
1
ISergey
Maniac
Эксперт С++
1407 / 918 / 148
Регистрация: 02.01.2009
Сообщений: 2,744
Записей в блоге: 1
20.01.2011, 00:53 #16
Цитата Сообщение от Mantissa Посмотреть сообщение
Вышло так, что _tmain() не воспринималась вообще. Как я поняла, проблема была в типах данных для некоторых переменных
_tmain() Это майкрософтовское расширение.. для UNICODE

Не по теме:

Цитата Сообщение от killboss
Для этого кнопочки есть

0
20.01.2011, 00:53
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.01.2011, 00:53
Привет! Вот еще темы с решениями:

cannot convert int(*)() to int . .
Доброго времени суток! Пытался создать массив из указателей на функции. ...

В каком случае надо начинать с int main() или с int _tmain( int argc, _TCHAR* argv[] ) и т.д.?
Не понимаю, с чего начинать. Заранее спс.

Что означает ошибка too few arguments to function ‘int my_func(int, int)’ (язык C++)?
В чём проблема? #include &lt;iostream&gt; int my_func (int i, int j){ int z; ...

[Linker error] undefined reference to `sterling(int, int, int)'
#include &lt;iostream&gt; using namespace std; int sterling(int,int,int); int...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru