Форум программистов, компьютерный форум CyberForum.ru

Переменная ссылочного типа в прототипе функции - C++

Восстановить пароль Регистрация
 
 
NanoChely
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 48
17.09.2013, 18:16     Переменная ссылочного типа в прототипе функции #1
Только начала изучать C++ и эти прототипы функций нигде не всртечал. Прописываю прототип функции со ссылкой:
C++
1
void dectohex(int&);
При компиляции выдает ошибку: error: expected ';', ',' or ')' before '&' token
Такую же ошибку выдает и в описании функции:
C++
1
void dectohex(int &num){
В той книге которую я читаю такой тип записи есть. Компилятор MinGW
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.09.2013, 18:16     Переменная ссылочного типа в прототипе функции
Посмотрите здесь:

C++ классы с использованием ссылочного типа данных.
Переменные ссылочного типа. Просьба разжевать и положить в рот. C++
Округляется переменная типа double C++
C++ Исследование особенностей применения переменных ссылочного типа и указателей
Есть функция, в прототипе которой несколько параметров перечислены через запятую. Можно ли в теле функции обработать их, как массив? C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Пёс
 Аватар для Пёс
228 / 76 / 4
Регистрация: 03.02.2013
Сообщений: 311
17.09.2013, 18:19     Переменная ссылочного типа в прототипе функции #2
NanoChely, весь код, пожалуйста.
UranFlex
131 / 129 / 21
Регистрация: 25.05.2013
Сообщений: 233
17.09.2013, 18:20     Переменная ссылочного типа в прототипе функции #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
// прототип
void dectohex( int& );
 
int main() {
 
    int a = 9;
    dectohex( a );
    return 0;
}
 
// определение
void dectohex( int &num ) {
    cout << num << endl;
 
}
NanoChely
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 48
17.09.2013, 18:26  [ТС]     Переменная ссылочного типа в прототипе функции #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
#include <stdio.h>
#include <process.h>
void dectohex(int&);
void main(){
    int a;
    scanf("%d",&a);
    dectohex(a);
}
void dectohex(int &num){
    char print;
    int mod = num%16;
    num = num/16;
    print = mod;
    if(mod==10) print = 'A';
    if(mod==11) print = 'B';
    if(mod==12) print = 'C';
    if(mod==13) print = 'D';
    if(mod==14) print = 'E';
    if(mod==15) print = 'F';
    printf("%s",mod);
    if(num==0) exit(1);
    dectohex(num);
}
Добавлено через 3 минуты
Хоть код и не правильный у меня, но на моём примере хотелось бы узнать что не так
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
17.09.2013, 18:28     Переменная ссылочного типа в прототипе функции #5
Это скорее всего код на чистом C, и Вы пытаетесь его компилировать компилятором C. А в С нет ссылок.

Не по теме:

Брутальный выход из рекурсии :-)

NanoChely
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 48
17.09.2013, 18:30  [ТС]     Переменная ссылочного типа в прототипе функции #6
Цитата Сообщение от UranFlex Посмотреть сообщение
using namespace std;
Это как я понимаю пространства имен в C++, я не знаю как в этом языке ПИ работает, хотелось бы узнать что в моём коде не так.

Добавлено через 1 минуту
Цитата Сообщение от Fyret Посмотреть сообщение
Это скорее всего код на чистом C, и Вы пытаетесь его компилировать компилятором C. А в С нет ссылок.

Не по теме:

Брутальный выход из рекурсии :-)

Нет, я проверял ссылки тут работают. Про выход из рекурсии, я только сегодня книгу открыл по C++, адекватность кода это на потом ))
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
17.09.2013, 18:32     Переменная ссылочного типа в прототипе функции #7
G++ или GCC?
UranFlex
131 / 129 / 21
Регистрация: 25.05.2013
Сообщений: 233
17.09.2013, 18:34     Переменная ссылочного типа в прототипе функции #8
NanoChely, на языке C есть только указатели. Указатели иногда еще называют ссылочным типом. Но это не ссылки.
А вот на C++ есть ссылки еще помимо указателей.
Т.е. Ваш пример на компиляторе C не прокатит.
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
17.09.2013, 18:34     Переменная ссылочного типа в прототипе функции #9
Цитата Сообщение от NanoChely Посмотреть сообщение
Нет, я проверял ссылки тут работают.
Я настаиваю, вот что у меня получается:

$ gcc ./main.c -o ./test
./main.c:3:18: ошибка: expected «;», «,» or «)» before «&» token
./main.c:9:19: ошибка: expected «;», «,» or «)» before «&» token

и вот так:
$ g++ ./main.cpp -o ./test
./main.cpp:4:11: ошибка: «::main» должна возвращать «int»
./main.cpp:21:22: ошибка: нет декларации «exit» в этой области видимости

Это не C++ код.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,872
Записей в блоге: 2
Завершенные тесты: 1
17.09.2013, 18:36     Переменная ссылочного типа в прототипе функции #10
Цитата Сообщение от NanoChely Посмотреть сообщение
Компилятор MinGW
запускаете компилятор как g++ или gcc?
NanoChely
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 48
17.09.2013, 18:38  [ТС]     Переменная ссылочного типа в прототипе функции #11
У меня компилятор C получается? Понятно. Тогда подскажите какой компилятор использовать? Какой популярный среди разрабов или для вас?)

Добавлено через 40 секунд
Цитата Сообщение от Croessmah Посмотреть сообщение
запускаете компилятор как g++ или gcc?
Я ничего не выбирал и не знаю что это и чем отличается. Я в CodeBlock писал код.
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
17.09.2013, 18:38     Переменная ссылочного типа в прототипе функции #12
Цитата Сообщение от NanoChely Посмотреть сообщение
У меня компилятор C получается?
в Mingw есть GCC и G++ , как именно вы компилите?
UranFlex
131 / 129 / 21
Регистрация: 25.05.2013
Сообщений: 233
17.09.2013, 18:39     Переменная ссылочного типа в прототипе функции #13
NanoChely, при создании проекта в CB выбирается либо C, либо C++
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
17.09.2013, 18:39     Переменная ссылочного типа в прототипе функции #14
Цитата Сообщение от NanoChely Посмотреть сообщение
Я в CodeBlock писал код.
файлик исходный у вас 'C' или 'CPP'(CXX) ?
NanoChely
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 48
17.09.2013, 18:40  [ТС]     Переменная ссылочного типа в прототипе функции #15
Цитата Сообщение от Raali Посмотреть сообщение
в Mingw есть GCC и G++ , как именно вы компилите?
GNU GCC COMPILER стоит

Добавлено через 47 секунд
Цитата Сообщение от Raali Посмотреть сообщение
файлик исходный у вас 'C' или 'CPP'(CXX) ?
C ) Если поменять на СPP, то компилятор в C++ компилить будет?
Raali
572 / 276 / 12
Регистрация: 06.07.2013
Сообщений: 917
Завершенные тесты: 1
17.09.2013, 18:41     Переменная ссылочного типа в прототипе функции #16
Цитата Сообщение от NanoChely Посмотреть сообщение
Если поменять на СPP, то компилятор в C++ компилить будет?
предположительно, не работал с CodeBlocks
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,872
Записей в блоге: 2
Завершенные тесты: 1
17.09.2013, 18:43     Переменная ссылочного типа в прототипе функции #17
Цитата Сообщение от NanoChely Посмотреть сообщение
Я в CodeBlock писал код.
при создании проекта он просит выбрать С или C++.

Попробуйте в данный проект вставить только следующий код:
C++
1
2
3
4
int main(void) {
    int * p = (void*)0 ;
    return 0;
}
Если скомпилируется, значит компилит как Си, если полезут ошибки, значит Си++
NanoChely
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 48
17.09.2013, 18:46  [ТС]     Переменная ссылочного типа в прототипе функции #18
Поменял расширение на cpp и ошибка пропала. Всем спасибо, не думал что в c++ такой гемор с этими компиляторами их туча и хз как понять чем они отличаются.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11825 / 6804 / 769
Регистрация: 27.09.2012
Сообщений: 16,872
Записей в блоге: 2
Завершенные тесты: 1
17.09.2013, 18:47     Переменная ссылочного типа в прототипе функции #19
Цитата Сообщение от NanoChely Посмотреть сообщение
и хз как понять чем они отличаются.
Каждый компилирует свой язык
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.09.2013, 18:48     Переменная ссылочного типа в прототипе функции
Еще ссылки по теме:

Переменная типа char C++
C++ Имена аргументов в прототипе функции
Переменная типа bool C++

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

Или воспользуйтесь поиском по форуму:
NanoChely
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 48
17.09.2013, 18:48  [ТС]     Переменная ссылочного типа в прототипе функции #20
Это типо есть куча версий c++?
Yandex
Объявления
17.09.2013, 18:48     Переменная ссылочного типа в прототипе функции
Ответ Создать тему
Опции темы

Текущее время: 17:44. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru