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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
nicenice
3 / 3 / 0
Регистрация: 22.11.2011
Сообщений: 168
#1

Можно ли писать int не в самом начале? - C++

04.12.2011, 20:14. Просмотров 1314. Ответов 25
Метки нет (Все метки)

а можно ли писать "int " не в начале программы, а где захочешь?
посмотрите где у меня может быть ошибка??

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
#include <stdio.h>
#include <conio.h>
 
int main (void)
{
char c;
printf ("tak");
c=getch();
switch (c)
{
case '1': printf("rrrrr"); break;
case '2': printf("mmmm"); break;
case '3': 
const int N=1;
const int T=2;
const int H=3;
int A[N][T],B[T][H],K[N][H];
int i=0,j=0,k=0,a;
 
printf ("BBeduTe IIePBbIy MaccuB\n");
for (i=0;i<N;i++)
for (k=0;k<T;k++)
{
scanf("%d", &A[i][k]);
}
printf ("BBeduTe BTOPOy MaccuB\n");
for (k=0;k<T;k++)
for (j=0;j<H;j++)
{
scanf("%d", &B[k][j]);
}
for (i=0;i<N;i++)
for (j=0;j<H;j++)
{
K[i][j]=0;
for(k=0;k<T;++k)                 
K[i][j]+= A[i][k]*B[k][j];
}  
for (i=0;i<N;i++)
for (j=0;j<H;j++)
{
printf("%d\n",K[i][j]);
} 
break;
}
getch();
return 1;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2011, 20:14     Можно ли писать int не в самом начале?
Посмотрите здесь:

Ребят что означаеют две звездочки в самом начале когда объявляем массив - C++
#include &lt;iostream&gt; int main() { float *arr1, **arr2; // массив точек float **kb1, **kb2; // массивы в которых...

Можно ли как-то сократить объявления using в начале программы? - C++
Запариля уже объявлять каждый раз в таком роде... using std::cin; using std::cout; using std::endl; using std::string; using...

Если if не выполняется, то можно не писать else? - C++
Например, код: if (a==true) cout &lt;&lt; &quot;a true&quot;; else cout &lt;&lt; &quot;a false&quot;; Можно заменить на? if(a==true) cout &lt;&lt;...

Можно ли писать вложенные лямбды? (с++11) - C++
Можно ли писать вложенные лямбды? Вот такая конструкция server.exec( ( Socket *sock ){ Client client( sock ); sock-&gt;recv( (...

Можно писать в консоли 20 шрифтом - C++
программа сделана в турбо 3_0 я хочу пронумеровать четырехугольник от 1 до 7 по координатам х и у 20 шрифтом это можно зробтит в консоли...

Как можно писать эту программу? - C++
я не могу писать эту программу ... задание. Разработка консольного приложения на языках C++ и C# Разработать консольное...

Подскажите 2д движок в котором на с++ писать можно - C++
хочу написать что-то простинькое кто пробовал подскажите пожалуйста

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
05.12.2011, 17:47     Можно ли писать int не в самом начале? #16
Цитата Сообщение от accept Посмотреть сообщение
второе определение - определение в новом стиле, когда точно указывается количество аргументов и тип каждого
Вообще-то оно означает, что функция не принимает параметры, это и контролирует компилятор!
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
05.12.2011, 23:23     Можно ли писать int не в самом начале? #17
Цитата Сообщение от go Посмотреть сообщение
Вообще-то оно означает, что функция не принимает параметры, это и контролирует компилятор!
пустых аргументов не бывает, поэтому void обрабатывается, как отсутствие аргументов
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
06.12.2011, 13:45     Можно ли писать int не в самом начале? #18
Цитата Сообщение от accept Посмотреть сообщение
пустых аргументов не бывает
В смысле??? Т.е. так писать нельзя
C
1
int fun ();
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
06.12.2011, 16:54     Можно ли писать int не в самом начале? #19
go, откомпилируйте код Си-компилятором:
C
1
2
3
4
5
6
7
8
9
10
11
12
void func()
{
}
 
int main(void)
{
    func();
    func(0);
    func(0, 1);
    
    return 0;
}
А теперь этот:
C
1
2
3
4
5
6
7
8
9
10
11
12
void func(void)
{
}
 
int main(void)
{
    func();
    func(0);
    func(0, 1);
    
    return 0;
}
Почувствуйте разницу
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
06.12.2011, 17:00     Можно ли писать int не в самом начале? #20
silent_1991, правильно, то , что и пытаюсь я объяснить accept

Цитата Сообщение от accept Посмотреть сообщение
int main(), int main(void) - это разные вещи, первое определение - определение в старом стиле (до 89 года), означающее, что функция может принимать неопределённое количество параметров неопределённого типа
второе определение - определение в новом стиле, когда точно указывается количество аргументов и тип каждого
Нет никаких аргументов.
Функция не принимает аргументы из командной строки, и компилятор это контролирует, вот что значит
C
1
int main (void)
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
06.12.2011, 17:23     Можно ли писать int не в самом начале? #21
go, у меня сложилось впечатление, что как раз вы ситуацию несколько не поняли, и её вам пытается разъяснить accept. Ибо в случае с void мы фактически сообщаем компилятору, что функция принимает 0 параметров. Т.е. это подпадает под определение accept насчёт количества (0) и типа (понятно, что никакого типа нет, ведь нет и параметров) параметров. В случае же пустых скобок мы вообще ничего не сообщаем компилятору о наличии/отсутствии параметров функции.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
06.12.2011, 17:30     Можно ли писать int не в самом начале? #22
silent_1991, а у меня обратное впечатление
C
1
int main ()
Компилятор не контролирует, передаются параметры в функцию или нет
C
1
int main (void)
Функция не принимает параметры, и это контролирует компилятор

Цитата Сообщение от silent_1991 Посмотреть сообщение
что функция имеет 0 параметров
К сожалению, accept этого не понимает, или не может объяснить, и мы с Вами не правильно его понимаем
Цитата Сообщение от accept Посмотреть сообщение
второе определение - определение в новом стиле, когда точно указывается количество аргументов и тип каждого
Какой тип??? Их вообще нет, и не может быть, т.к.
Цитата Сообщение от go Посмотреть сообщение
Вообще-то оно означает, что функция не принимает параметры, это и контролирует компилятор!
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
06.12.2011, 17:34     Можно ли писать int не в самом начале? #23
go, accept просто провёл параллель между таким:
C
1
int func(int a, int b);
- функция, принимающая 2 параметра, каждый типа int, и возвращающая int; и таким:
C
1
int func(void);
- функция, принимающая 0 параметров (не принимающая параметров) и возвращающая int.
Для общности стоит сказать, что этот стиль требует точного определения количества и типа параметров, пусть и при нуле параметров типы не указываются (их не для чего указывать).
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
06.12.2011, 23:53     Можно ли писать int не в самом начале? #24
Цитата Сообщение от go Посмотреть сообщение
Функция не принимает параметры, и это контролирует компилятор
далеко не факт, что он контролирует это так, как ты думаешь
void может значит, что тип первого аргумента пустой
(аргументы пустого типа не передаются, следовательно, там нет аргументов)
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
07.12.2011, 10:02     Можно ли писать int не в самом начале? #25
далеко не факт,
C++
1
2
3
4
5
6
7
8
9
10
11
12
void fun (void *a)
{
    std::cout<< * (int *) a;
}
int main(int argc, char* argv[])
{
 
    int b = 5;
    fun (&b);
 
    return 0;
}

Не по теме:

К чему этот спор.

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2011, 10:37     Можно ли писать int не в самом начале?
Еще ссылки по теме:

Можно ли в С++ писать программы с красивым интерфейсом - C++
У меня такой вопрос а вот в с++ нельзя писать красивые программы? тоесть с интерфейсом там чтоб кнопочки потыкать мне это очень важно прошу...

Можно ли из под linux писать приложения для Windows c использыванием графики!!?? - C++
Очень заинтересовал етот вопрос так как отформатил жосткий и поставил линух а теперь незнаю ...

Пустой терминал (в котором можно писать, что угодно) при выполнении программы - C++
Доброго времени суток. Возникла такая проблема. Пробую выполнить программу в geany, на что geany выдает пустой терминал в котором я могу...

можно ли инкрементировать в for на два. т.е. for(int i=0; i< N; i+2) - C++
ну конкретно так не получается, компилятор ругается, может как то по другому можно. Сейчас сделал так : for(int i=0; i&lt; N; i++) { ...

как можно перевести `int*' to `UINT' - C++
Есть программа в которой нужно отмечать сохраненные пункт меню. Решил данные об отмеченых пунктах записывать в реестр, после запуска...


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

Или воспользуйтесь поиском по форуму:
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
07.12.2011, 10:37     Можно ли писать int не в самом начале? #26
Цитата Сообщение от go Посмотреть сообщение
далеко не факт
Ну как бы void и void * разные вещи. Складывается впечатление, что вы об одном и том же говорите.
Yandex
Объявления
07.12.2011, 10:37     Можно ли писать int не в самом начале?
Ответ Создать тему
Опции темы

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