Вопрос-Ответ (C++)
| |
Kornival | Дата: Воскресенье, 04 Сентября 2011, 19:10 | Сообщение # 1 |
The Witcher
Сейчас нет на сайте
| Чтобы не создавать отдельную тему на каждый глупый вопрос, предлагаю задавать их здесь.
Saitei: все вопросы по С задаём в теме Вопрос-Ответ (С). Благодарю за внимание!
|
|
| |
pelmenka | Дата: Понедельник, 29 Апреля 2013, 18:47 | Сообщение # 841 |
Драгоценный Тунеядец
Сейчас нет на сайте
| Deswing, чем тебе простой 3+4 не угодил?
Сталина в каждый дом!
|
|
| |
Revolver_45 | Дата: Понедельник, 29 Апреля 2013, 19:22 | Сообщение # 842 |
почетный гость
Сейчас нет на сайте
| Первый вариант это по сути и есть простая операция 3 + 4, всё что ты сделал это злоупотребил директивой препроцессора, это не конструкция языка, и это НЕ переменная, а всего-лишь именованная константа. Препроцессор ещё ДО компиляции заменит в твоём коде все подстроки sum(a,b) на простые операции 3 + 4. В ДАННОМ примере оба твои варианта не обоснованы, но ФОРМАЛЬНО первый вариант лучше (быстрее).
rtytyrtyr
Сообщение отредактировал Revolver_45 - Понедельник, 29 Апреля 2013, 19:30 |
|
| |
Noterstone | Дата: Среда, 01 Мая 2013, 17:53 | Сообщение # 843 |
участник
Сейчас нет на сайте
| Чёта я не понял, либо это я туплю от недосыпа, либо это мистика. Где ошибка?
Доступно только для пользователейДобавлено (01.05.2013, 17:53) --------------------------------------------- Да емаё все же нормально
#include <conio.h> #include <iostream>
using namespace std;
int func(int &nVariable){ nVariable /= 2; return nVariable; }
int main(){ int value = 100; func(value, value * 5, value / 2); cout << value; cin.get(); }
Сообщение отредактировал Noterstone - Среда, 01 Мая 2013, 17:22 |
|
| |
PixoDroid | Дата: Среда, 01 Мая 2013, 18:35 | Сообщение # 844 |
был не раз
Сейчас нет на сайте
| что это такое? :)
Добавлено (01.05.2013, 18:29) --------------------------------------------- Цитата (Noterstone) int func(int &nVariable){ Цитата (Noterstone) func(value, value * 5, value / 2); слишком много параметров.
Добавлено (01.05.2013, 18:35) --------------------------------------------- Откуда там вообще obj? понял.
Сообщение отредактировал PixoDroid - Среда, 01 Мая 2013, 18:38 |
|
| |
RUNGOGET2THECHOPAH | Дата: Среда, 01 Мая 2013, 22:11 | Сообщение # 845 |
участник
Сейчас нет на сайте
| Noterstone, Первое: error C2065: 'obj' : undeclared identifier. Второе: error C2660: 'func' : function does not take 3 arguments. Дальше сам думай, почему не собирается. Но лучше сначала поспи.
Сообщение отредактировал RUNGOGET2THECHOPAH - Среда, 01 Мая 2013, 22:13 |
|
| |
Noterstone | Дата: Суббота, 04 Мая 2013, 09:51 | Сообщение # 846 |
участник
Сейчас нет на сайте
| RUNGOGET2THECHOPAH, Насчёт первого и второго я уже по самое горло осведомлён компилятором, а вопрос стоял такой - как эту ошибку исправить. Точнее объяснить на русском что он хочет.
|
|
| |
Lord_Zeon | Дата: Суббота, 04 Мая 2013, 10:16 | Сообщение # 847 |
частый гость
Сейчас нет на сайте
| Noterstone, Головой думать разучились? Или же пробел в знаниях? И даже намеки на тебя не действуют. Цитата Первое: error C2065: 'obj' : undeclared identifier. - Очевидно что компилятор намекает на отсутствие 'obj', он у тебя ни в каком месте не объявлен и не определен. Цитата Второе: error C2660: 'func' : function does not take 3 arguments. - Компилятор говорит функция не имеет 3 аргументов, а теперь посмотри сам на нее int func(int &nVariable), сколько здесь аргументов? Правильно, один, а мы что делаем?
Как вообще можно писать такое, самому не стыдно?
|
|
| |
Noterstone | Дата: Суббота, 04 Мая 2013, 11:11 | Сообщение # 848 |
участник
Сейчас нет на сайте
| Lord_Zeon, Значит это тут не правильно?
Сообщение отредактировал Noterstone - Суббота, 04 Мая 2013, 11:11 |
|
| |
Lord_Zeon | Дата: Суббота, 04 Мая 2013, 11:35 | Сообщение # 849 |
частый гость
Сейчас нет на сайте
| Noterstone, В первом примере на сайте все правильно, ты переписал с ошибкой, проверяй.
Во втором возможно автор хотел рассказать о функциях с переменным количеством переменных, выглядит это так: type function(type name, ...); где type - тип переменной, name - ее имя. Тогда пример заработает и все будет так, как и описывал автор темы на сайте.
Сообщение отредактировал Lord_Zeon - Суббота, 04 Мая 2013, 11:58 |
|
| |
Noterstone | Дата: Суббота, 04 Мая 2013, 11:47 | Сообщение # 850 |
участник
Сейчас нет на сайте
| Lord_Zeon, Ок, проверю. Наверное когда писал код слишком хотел спать.
|
|
| |
Xakep | Дата: Суббота, 04 Мая 2013, 12:14 | Сообщение # 851 |
めちゃくちゃちゃ
Сейчас нет на сайте
| Noterstone, используй гугл переводчик, и если все же не понял в чем ошибка, тогда в гугл вбей ошибку
|
|
| |
Animan2010 | Дата: Пятница, 10 Мая 2013, 17:57 | Сообщение # 852 |
постоянный участник
Сейчас нет на сайте
| А почему нельзя использовать: hgeSprite* _left_spr,_right_spr; а вместо этого надо: hgeSprite *_left_spr,*_right_spr; ?
Anima Games Animan Publishing
|
|
| |
Lord_Zeon | Дата: Пятница, 10 Мая 2013, 18:07 | Сообщение # 853 |
частый гость
Сейчас нет на сайте
| Цитата hgeSprite* _left_spr, _right_spr; В этом случае _right_spr не является указателем.
|
|
| |
x_X | Дата: Пятница, 10 Мая 2013, 23:00 | Сообщение # 854 |
был не раз
Сейчас нет на сайте
| Цитата (Lord_Zeon) А почему нельзя использовать: hgeSprite* _left_spr,_right_spr; звездочка относится не к типу, а к переменной, пиши звезду рядом с переменной, так нагляднее : Код hgeSprite *_left_spr, *_right_spr;
Сообщение отредактировал x_X - Пятница, 10 Мая 2013, 23:00 |
|
| |
Wolfling | Дата: Воскресенье, 12 Мая 2013, 17:21 | Сообщение # 855 |
был не раз
Сейчас нет на сайте
| Господа, помогите решить проблему. Есть часть кода Код AdjustWindowRectEx( &WindowRect, dwStyle, false, dwExStyle ); // Подбирает окну подходящие размеры if( !( hWnd == CreateWindowEx( dwExStyle, // Расширенный стиль для окна "OpenGL", // Имя класса title, // Заголовок окна WS_CLIPSIBLINGS|WS_CLIPCHILDREN| // Требуемый стиль для окна dwStyle, // Выбираемые стили для окна 0, 0, // Позиция окна WindowRect.right-WindowRect.left, // Вычисление подходящей ширины WindowRect.bottom-WindowRect.top, // Вычисление подходящей высоты NULL, // Нет родительского NULL, // Нет меню hInstance, // Дескриптор приложения NULL ) ) ) // Не передаём ничего до WM_CREATE (???) взятая отсюда , проблема в том, что при компиляции выдаёт ошибку Цитата [BCC32 Error] Unit.cpp(184): E2034 Cannot convert 'const wchar_t *' to 'const char *' [BCC32 Error] Unit.cpp(184): E2342 Type mismatch in parameter 'lpWindowName' (wanted 'const char *', got 'const wchar_t *') в строке Код NULL ) ) ) // Не передаём ничего до WM_CREATE (???) хотя в хэлпе прямо написано, что NULL допустим, плюс я знаю, что NULL не надо приводить ни к какому виду. P.S. Смотрел оригинал статьи - там так же.
Сообщение отредактировал Wolfling - Воскресенье, 12 Мая 2013, 17:39 |
|
| |
kSky7000 | Дата: Воскресенье, 12 Мая 2013, 18:04 | Сообщение # 856 |
частый гость
Сейчас нет на сайте
| Wolfling, Есть предположение, что ошибка здесь: Код title, // Заголовок окна Попробуй title задать как конст. строку, а не передавать переменную. Можешь вбить "title". Возможно поможет, хотя я не уверен. С этими функциями не работал.
|
|
| |
Wolfling | Дата: Понедельник, 13 Мая 2013, 12:38 | Сообщение # 857 |
был не раз
Сейчас нет на сайте
| Цитата (kSky7000) Попробуй title задать как конст. строку, а не передавать переменную. Можешь вбить "title". Возможно поможет, хотя я не уверен. С этими функциями не работал. На удивление - помогло о_О Спасибо, хотя я не понял, в чём фишка была... Компилятор же на другую строку указывал о_О
|
|
| |
Shevron_7 | Дата: Пятница, 17 Мая 2013, 22:09 | Сообщение # 858 |
маньяк-бомбист
Сейчас нет на сайте
| Как вывести на экран среднее арифметическое всех положительных чисел в массиве?
Добавлено (17.05.2013, 22:09) --------------------------------------------- все, сам понял: Код for(int o = 0 ; o < m ; o++ ) { if(mas[o]>0) { summa += mas[o]; count++; } }
TEST => Мои игры: Kill your brain Space Conflict Zombie Day Bounce PC Extra ball 2012
Это спасибо в карман не положишь, а в репутацию можно. +1
Сообщение отредактировал Shevron_7 - Пятница, 17 Мая 2013, 22:10 |
|
| |
GameLoper | Дата: Четверг, 23 Мая 2013, 13:40 | Сообщение # 859 |
Нуб в гейм-деве
Сейчас нет на сайте
| где ошибка? Код #include <cstdlib> #include <iostream>
using namespace std; int playerx=0; int playery=0; const char* graphics[10][10];
int main(int argc, char *argv[]) { graphics[1][1]="w"; graphics[1][2]="w"; graphics[1][3]="w"; graphics[1][4]="w"; system("cls"); for(int x =0;x<10;x++) { for(int y =0;y<10;y++) { cout << graphics[x][y]; } cout << "\n"; } cin.get(); return EXIT_SUCCESS; } Добавлено (23.05.2013, 13:40) --------------------------------------------- не выводить 4 буквы w
Single of game tycoon = 10%
|
|
| |
Apati | Дата: Четверг, 23 Мая 2013, 13:48 | Сообщение # 860 |
заслуженный участник
Сейчас нет на сайте
| Цитата (GameLoper) const char* graphics[10][10]; char graphics[10][10]; 'w'
|
|
| |
|