forum.rastrnet.ru

forum.rastrnet.ru (http://forum.rastrnet.ru/index.php)
-   Программируем (http://forum.rastrnet.ru/forumdisplay.php?f=35)
-   -   C++ создание EXE (http://forum.rastrnet.ru/showthread.php?t=19782)

MebiuS 14.07.2006 15:13

Вопросы по C++
 
имеется исходник *cpp
альт+ф9 - создается файл *obj
вопрос: как создать с него *exe ?

_Nva_ 14.07.2006 15:56

Вместо Alt+F9 надо нажимать Ctrl-F9 или F9 в зависимости от среды разработки - создается *.exe и запускается.

PAPA_KARLO 14.07.2006 17:14

Expected a file name: - в этом месте ожидалось название файла

PAPA_KARLO 14.07.2006 17:39

ошибка компилятора.. он должен ставить курсор в место ошибки. туда и добавь то, что ему нада... а при нажатии ctrl+f1 должна спрака по этой ошибке вылазить

Casy 14.07.2006 20:09

Mebius, скажи мне, если я спрошу у тебя "у меня не работает коробка передач, куда обратиться" что ты мне скажешь? Наверное задашь вопрос про механку-автомат и марку машины. А почему ты считаешь что все среды разработки одинаковые?
В какой среде запускаешь? Как делал этот исходник? Можешь сам исходник заодно приложить.

Paul 14.07.2006 22:56

ошиба ж линкера, тама и нужо чего крутить. Сам с борлондом не в ладах, уж извините (есчо с веремен гребаного и всеми любимого 3.1).
А вот в визостудии - нужо бибки прописывать. И есчо чего то.
Проект то как создавали?? Вот визиостудии нужо выбирать консоль - шоб он там сразу усю разную грязную работу за вас сделал.

Ратибор 15.07.2006 11:22

Цитата:

Сообщение от MebiuS
нет это ошибка выскакивающая при нажатии F9мож туда название прилепить куда надо? только где... тупой учебник у меня какойто чес слово

Природа возникающей у тебя ошибки мне не ясна, но твой простейший пример работает на ура, да и не могло быть иначе.

Делай так:
1. File -> New -> Other...
2. Здесь выбираешь Console Wizard (потому что у тебя именно консольная программка)
3. Здесь оставляешь включенным только чекбокс "Console Application" и жмешь OK.

Все. Копируй в открывшийся unit1.cpp свой исходник, F9 - и делай с ним дальше, что хошь...

Paul 15.07.2006 11:48

карочь, ставь vscpp, лучше сразу 7 - до сих пор можно без всяких гребаных нетов.

Ратибор 15.07.2006 12:05

Цитата:

Сообщение от MebiuS
цитирую: "это глюк билдера. Я с ним встречался раз 10-20, но решения так и не нашел"

возможное решение :
меню Project->Options, на вкладке Directorials/Conditionals в
include Path и Library Path стереть все кроме $(BCB)\include;$(BCB)\include\vcl и $(BCB)\lib\obj;$(BCB)\lib

непомогло... щас переставлю Си

У меня стоит именно 6-ка (+sp4). И твой пример работает без проблем. Попробуй поставить этот апдейт, может быть именно он и фиксит этот баг...

ftp://ftp2.rastr.net.ru/incoming/Sof...uilder/Update/

Paul 15.07.2006 14:11

попробуй кинуть-с рядышком (в той же дире), обычно помогает

А когды будешь дистр мутить - то это дело нужо значит будет в system32 копировать. Ну так все делают, хотя мож лучше рядышком. Решайте сами.

Ратибор 15.07.2006 14:51

Цитата:

Сообщение от MebiuS
думаю писать суда свои нубовские вопросы:
допустим я создал exe
при запуске он требует cc3260mt.dll и stlpmt45.dll
вопрос: как прицепить эти длл к файлу?

Для того, чтобы твоя прога запускалась на других компах и при этом не требовала никаких библиотек (но при этом размер exe-шника увеличится):

Project -> Options... -> Linker
Здесь снять галку "Use dinamic RTL"

Project -> Options... -> Packages
Здесь снять галку "Build with runtime packages"

Сделать rebuild.

_Nva_ 25.12.2006 15:44

Замени возведением в степень 1/3.
Функция pow(x,y); Возводит x в степень y.

MebiuS 02.10.2007 20:26

думаю надо немного возродить эту тему

как записать "если k,l,m,n больше восьми или меньше единицы то"

пишу if ( (k,l,m,n)>8 || (k,l,m,n)<1 ) но обрабатывает только (k,l,m,n)>8, на вторую часть ноль внимания

каков правильный синтаксис?

_Nva_ 02.10.2007 21:46

Так не получится в силу того что (k,l,m,n) дает n и оно уже сравнивается с восьмеркой и единицей.
пример:
m = (m = 5, m + 9);
результат: m=14
Выражения в скобка разделенные через запятую считаются слева на право.
Пиши для каждой переменной отдельно условие и соединяй это все через &&, || или макрос, если часто одно и тоже, а границы для условий меняются.

MebiuS 03.10.2007 00:29

Цитата:

Сообщение от _Nva_ (Сообщение 533443)
Пиши для каждой переменной отдельно условие и соединяй это все через &&, || или макрос, если часто одно и тоже, а границы для условий меняются.

остановился на ( k>8 || l>8 || m>8 || n>8 || k<1 || l<1 || m<1 || n<1 )
спасибо:)

Ратибор 07.10.2007 13:40

Цитата:

Сообщение от MebiuS (Сообщение 533523)
остановился на ( k>8 || l>8 || m>8 || n>8 || k<1 || l<1 || m<1 || n<1 )
спасибо:)

Исходя из твоего условия k,l,m,n - одновременно должны быть или больше восьми, или меньше единицы. Если это так и есть, то твое решение не верно.

MebiuS 07.10.2007 13:50

Цитата:

Сообщение от Ratibor (Сообщение 535757)
Исходя из твоего условия k,l,m,n - одновременно должны быть или больше восьми, или меньше единицы. Если это так и есть, то твое решение не верно.

если какое либо из них меньше1 или больше8 то выход
иначе ...

REY 08.10.2007 22:05

Товарищи программисты! Может мне кто-нибудь помочь? У меня простенькая задача, но что-то никак не выходит сделать, то что хочу.
Вобщем нужно написать прогу которая анализирует простое число или нет, всего-то навсего.
Вобщем вот, что у меня вышло.
#include <iostream.h>
int main()
{
int chislo,i,itog;
cout << "Vvedite chislo: ";
cin >> chislo;
i=chislo; //переприсваиваем значение введеное с клавы др. переменной
while (i>2) // нет смысла анализировать единицу - все числа на нее делятся
{
i--;
itog=chislo % i;

if (itog==0) // т.е как только число поделилось на какое-то без остатка, оно не простое.
{
cout << " Chislo prostim ne iavlaietsa" <<endl;
break;

}

}

return 0;
}



Комментарии я написал, чтобы долго не разбираться на основе чего я делаю какие выводы.
Вобщем, как видите она у меня определяет числа которые простыми не являются. И никак не получается написать, чтобы в случае, если число простое, она это напрямую сказала. Короче, какое условия нужно еще ввести или цикл вложенный, чтобы это сделать.
Я уже час мучаюсь и все не то получается.

Casy 08.10.2007 22:33

Делай вот так:

#include <iostream.h>
int main()
{
int chislo,i,itog;
cout << "Vvedite chislo: ";
cin >> chislo;
i=chislo; //переприсваиваем значение введеное с клавы др. переменной
while (i>2) // нет смысла анализировать единицу - все числа на нее делятся
{
i--;
itog=chislo % i;

if (itog==0) // т.е как только число поделилось на какое-то без остатка, оно не простое.
{
cout << " Chislo prostim ne iavlaietsa" <<endl;
return 0;

}

}
cout << " Chislo prostoe" <<endl;
return 0;
}

TiRex 09.10.2007 13:39

for(i=2,i<=(toChtoNadoProverit/2),i++)
{
if(toChtoNadoProverit%i==0) //нету смысла делить на число превышающее половину требуемого
{
printf("Preved"); //превед ты выиграл миллион
куегктж //чтото не то было
}
}


Текущее время: 21:33. Часовой пояс GMT +7.

Powered by vBulletin® Version 3.8.4 Patch Level 5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd. Перевод: zCarot

Форум открыт в июле 2004 г.