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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.69
Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
#1

Привет World - C++

01.10.2009, 12:59. Просмотров 2090. Ответов 22
Метки нет (Все метки)

Написал 1-ый раз программу на студии 2005, в Win 32 project, программа не хочет компилится.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include "stdafx.h"
#include "Dlia_API.h"
#include <windows.h>
 
int WINAPI WinMain (HINSTANCE hThisInstance,
                    HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,
                    int nFunsterStil)
{
    MessageBox(0,"Hello world","Privet",0);
    
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.10.2009, 12:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Привет World (C++):

Поменять слова местами то есть Hello World > World Hello C++ - C++
Ребят всем привет помогите решить задачку: Имеется предварительно созданный текстовый файл, содержащий строку &quot;Hello World&quot;. Поменять слова...

Если введено слово "Привет", то вывести "Привет" - C++
Как сделать чтобы если введено слово Привет то отвечает Привет !!!

10 раз вывести на экран слово «Привет» - C++
10 раз вывести на экран (каждый раз с новой строки) слово «Привет». Использовать цикл for.

Привет всем. Прога-мини калькулятор. С++ - C++
Вводим с клавиатуры в строчку пример, состоящий из 6 цифр, ну и 5 знаков(знаки только + и *). Необходимо, чтоб действия выполнялись по...

Найти числа, кратные 5 и заменить их на слово Привет - C++
очень нужно решить задачу. завтра сдавать. Вывести массив от 1 до 50 найти числа кратные 3 и заменить их на слово Вам найти числа...

Привет всем кто нибудь подкинет код программ на С++? - C++
Просто начал осваивать даже не зная ни одного кода ну калькулятор то я написал через Dev-C++ а вот другое что нибудь я не пойму как создать...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
грязный
31 / 31 / 0
Регистрация: 15.11.2008
Сообщений: 205
01.10.2009, 13:34 #2
Цитата Сообщение от Golovastik Посмотреть сообщение
программа не хочет компилится
что пишет при этом компилятор?
0
Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
01.10.2009, 14:22  [ТС] #3
Вот так заработало:

C++
1
2
3
4
5
6
7
8
#include "stdafx.h"
#include <windows.h>
int WINAPI WinMain (HINSTANCE hThisInstance,HINSTANCE hPrevInstance,
                    LPSTR lpszArgument,int nFunsterStil)
{
    MessageBox(0,L"Привет, страна Украина",L"Информация",MB_ICONINFORMATION);
    return 0;
}
Пару уточнений
1)Скажите, зачем писать L?
2)Если не трудно,очень надо:
Напишите по слову, что означает:
Код
int WINAPI WinMain (HINSTANCE hThisInstance,HINSTANCE hPrevInstance,LPSTR lpszArgument,int nFunsterStil)
Меня интересует, то что в скобочках,оченб нужно. Зараннее благодарю.
0
Paulie
Айхрень...
306 / 174 / 4
Регистрация: 02.06.2009
Сообщений: 1,078
01.10.2009, 14:28 #4
Цитата Сообщение от Golovastik Посмотреть сообщение
Скажите, зачем писать L?
Видимо так определено в спецификациях WinAPI


Цитата Сообщение от Golovastik Посмотреть сообщение
что означает:
Код:
int WINAPI WinMain (HINSTANCE hThisInstance,HINSTANCE hPrevInstance,LPSTR lpszArgument,int nFuns
Это описание функции, которая вызывается при запуске приложения, и в неё системой передаются параметры, описанные в скобках.
0
Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
01.10.2009, 14:34  [ТС] #5
Напишите пожалуйста по слову, что они означают, очень надо.
0
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
01.10.2009, 15:57 #6
C++
1
2
3
4
5
int WINAPI WinMain(          HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPSTR lpCmdLine,
    int nCmdShow
);

hInstance
[in] Handle to the current instance of the application.
hPrevInstance
[in] Handle to the previous instance of the application. This parameter is always NULL. If you need to detect whether another instance already exists, create a uniquely named mutex using the CreateMutex function. CreateMutex will succeed even if the mutex already exists, but the function will return ERROR_ALREADY_EXISTS. This indicates that another instance of your application exists, because it created the mutex first. However, a malicious user can create this mutex before you do and prevent your application from starting. To prevent this situation, create a randomly named mutex and store the name so that it can only be obtained by an authorized user. Alternatively, you can use a file for this purpose. To limit your application to one instance per user, create a locked file in the user's profile directory.
lpCmdLine
[in] Pointer to a null-terminated string specifying the command line for the application, excluding the program name. To retrieve the entire command line, use the GetCommandLine function.
nCmdShow
[in] Specifies how the window is to be shown. This parameter can be one of the following values.
SW_HIDE
Hides the window and activates another window.
SW_MAXIMIZE
Maximizes the specified window.
SW_MINIMIZE
Minimizes the specified window and activates the next top-level window in the Z order.
SW_RESTORE
Activates and displays the window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when restoring a minimized window.
SW_SHOW
Activates the window and displays it in its current size and position.
SW_SHOWMAXIMIZED
Activates the window and displays it as a maximized window.
SW_SHOWMINIMIZED
Activates the window and displays it as a minimized window.
SW_SHOWMINNOACTIVE
Displays the window as a minimized window. This value is similar to SW_SHOWMINIMIZED, except the window is not activated.
SW_SHOWNA
Displays the window in its current size and position. This value is similar to SW_SHOW, except the window is not activated.
SW_SHOWNOACTIVATE
Displays a window in its most recent size and position. This value is similar to SW_SHOWNORMAL, except the window is not actived.
SW_SHOWNORMAL
Activates and displays a window. If the window is minimized or maximized, the system restores it to its original size and position. An application should specify this flag when displaying the window for the first time.

Добавлено через 1 минуту
Названия параметров разные - суть та же.
0
Dilan
8 / 8 / 1
Регистрация: 26.09.2009
Сообщений: 65
01.10.2009, 16:21 #7
конечно кому как но я советовал-бы начать с простова например DEV C++, литературы много и проще а потом уже переходить на что-та по интересней

IMHO
0
Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
01.10.2009, 16:24  [ТС] #8
дескриптор - число которое исползуется для доступа к экземпляру.
Что подразумевается под экземпляром?
0
novi4ok
551 / 504 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
01.10.2009, 16:32 #9
Цитата Сообщение от Golovastik Посмотреть сообщение
[B]
Пару уточнений
1)Скажите, зачем писать L?
в вашем варианте можете их убрать, а понимание того, что это такое, отложитьж на потом.

Цитата Сообщение от Golovastik Посмотреть сообщение
[B]
2)Если не трудно,очень надо:
Напишите по слову, что означает:
Код
int WINAPI WinMain (HINSTANCE hThisInstance,HINSTANCE hPrevInstance,LPSTR lpszArgument,int nFunsterStil)
Меня интересует, то что в скобочках,оченб нужно. Зараннее благодарю.
HINSTANCE - "хэндл" текущего экземпляра вашего приложения. "хэндл" - это по-простому что-то вроде указателя на "таблицы", описывающие какой-нибудь объект. в данном случае - текущий экземпляр вашего приложения (его можно в общем случае запустить несколько раз, и имя процесса будет везде одно и то же, а хэндлы - разные допустим, вы написали программу HelloWorld и запустили ее несколько раз. все будут так и называться, но каждый экземпляр будет иметь собственный хэндл).
первый параметр - хэндл вашего текущего экземпляра, второй - обычно нуль, но если принять меры, то получите хэндл экземпляра вашего же приложеня, запущенного раньше (если имеется)
третий параметр - командная строка
четвертый - как открывать главное окно при старте (минимизированным, максимизированным...)
1
Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
01.10.2009, 16:47  [ТС] #10
1)Прочитал что дескриптор - это ссылка на объект.
HISTANCE - это дескриптор, на какой объект он ссылается:?
2) Вы говорите,что 3 парметр LPSTR lpszArgument - это командная строка,
это место можно уточнить,зачем оно,и что значит lpszArgument?
Благодарю зараннее.
0
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
01.10.2009, 16:52 #11
Цитата Сообщение от Golovastik Посмотреть сообщение
lpszArgument
Вы читали что я написал?
Все же написано.
lpszArgument - указатель на строку с параметрами, переданными приложению при запуске
0
novi4ok
551 / 504 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
01.10.2009, 17:14 #12
Цитата Сообщение от Golovastik Посмотреть сообщение
1)Прочитал что дескриптор - это ссылка на объект.
HISTANCE - это дескриптор, на какой объект он ссылается:?
на "программу", которая как раз выполняется (на ваш хэллоуорлд).

Цитата Сообщение от Golovastik Посмотреть сообщение
2) Вы говорите,что 3 парметр LPSTR lpszArgument - это командная строка,
это место можно уточнить,зачем оно,и что значит lpszArgument?
Благодарю зараннее.
ну вдруг там параметры какие-то ожидаются?
если не нравится lpszArgument, напишите туда что угодно. "blablabla" например. визард назвал так, имея ввиду что это:
lp длинный поинтер (long pointer)
sz строчка с нулем на конце (null-terminated string, string with zero)
Argument- не знаю
0
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
01.10.2009, 17:27 #13
Цитата Сообщение от Golovastik Посмотреть сообщение
lpszArgument
Вы читали что я написал?
Все же написано.
lpszArgument - указатель на строку с параметрами, переданными приложению при запуске
0
Golovastik
11 / 11 / 0
Регистрация: 25.05.2009
Сообщений: 435
01.10.2009, 18:19  [ТС] #14
C++
1
lpszArgument - указатель на строку с параметрами,
То есть:
lpszArgument Указывает на вот эти 2 строки:

"Привет, страна Украина",L"Информация".

C++
1
 MessageBox(0,L"Привет, страна Украина",L"Информация",MB_ICONINFORMATION);
0
R0mm
Псевдо программист
192 / 113 / 15
Регистрация: 19.09.2009
Сообщений: 303
01.10.2009, 18:34 #15
Нет.
Пример:
prog.exe -t

здесь "-t" - параметр. Хранится как строка в lpszArgument
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.10.2009, 18:34
Привет! Вот еще темы с ответами:

Привет. Как можна найти с даного примера умножение элементов массива с четными номерами? - C++
#include &quot;stdafx.h&quot; #include &lt;stdlib.h&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; ...

Hello World! - C++
Доброго времени товарищи. Не могу никак найти тему. Где-то на этом форуме есть целая тема в которой предствалена огромная куча вариантов...

Hello world - C++
пытаюсь запустить прогу в Код-Блокс. Что не так (см. приложение)?

Hello, World! - C++
Добрый день. Купил книгу Б.Страуструпа - Принципы и практика использования С++, Напечатал первый код , при компиляции выскочили...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.10.2009, 18:34
Ответ Создать тему
Опции темы

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