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

Error C2065: _winmajor: необъявленный идентификатор - C++

Восстановить пароль Регистрация
 
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
10.05.2014, 12:20     Error C2065: _winmajor: необъявленный идентификатор #1
Помогите дописать!

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Наглядно продемонстрировать инициализацию переменных, совершаемую
стартовым кодом, позволяет следующая программа.
#include <stdio.h>
#include <stdlib.h>
void main()
{
int a;
printf(">Версия OS:\t\t\t%d.%d\n\
>Билд:\t\t\t%d\n\
>Количество агрументов:\t%d\n",\
_winmajor,_winminor,_osver,__argc);
for (a=0;a<__argc;a++)
printf(">\tАгрумент %02d:\t\t%s\n",a+1,__argv[a]);
a=!a-1;
while(_environ[++a]) ;
printf(">Количество переменных окружения:%d\n",a);
while(a) printf(">\tПеременная %d:\t\t%s\n",a,_environ[--a]);
}
a) исходный текст программы CRt0.demo.c
Прототип функции main как будто указывает, что
Добавлено через 2 минуты
Я его сейчас суну в среду и компилирую и мы с вами как говорится прочитаем ошибки.

Добавлено через 10 минут
Ошибка 2 error C2065: _winmajor: необъявленный идентификатор d:\myprog\crt0.demo.c\crt0.demo.c\crt0.demo.c\crt0.demo.c 8 1 CRt0.demo.c
Ошибка 3 error C2065: _winminor: необъявленный идентификатор d:\myprog\crt0.demo.c\crt0.demo.c\crt0.demo.c\crt0.demo.c 8 1 CRt0.demo.c
Ошибка 4 error C2065: _osver: необъявленный идентификатор d:\myprog\crt0.demo.c\crt0.demo.c\crt0.demo.c\crt0.demo.c 8 1 CRt0.demo.c
5 IntelliSense: идентификатор "_winmajor" не определен d:\myprog\crt0.demo.c\crt0.demo.c\crt0.demo.c\crt0.demo.c 2097151 2047 CRt0.demo.c
6 IntelliSense: идентификатор "_winminor" не определен d:\myprog\crt0.demo.c\crt0.demo.c\crt0.demo.c\crt0.demo.c 2097151 2047 CRt0.demo.c

Добавлено через 7 минут
Конечно не ициализированы. Но что же имел в виду автор?

Добавлено через 8 минут
Прототип функции main как будто указывает, что приложение не принимает ни
каких аргументов командной строки, но результат работы программы доказывает обратное
и на машине автора выглядит так (приводится в сокращенном виде):
>Версия OS: 5.0
>Билд: 2195
>Количество агрументов: 1
> Агрумент 01: CRt0.demo
>Количество переменных окружения: 30
> Переменная 29: windir=C:\WINNT
>...
b) результат работы программы CRt0.demo.c
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2014, 12:20     Error C2065: _winmajor: необъявленный идентификатор
Посмотрите здесь:

C++ error C2065: eof: необъявленный идентификатор
C++ error C2065: wmId: необъявленный идентификатор
C++ error C2065: cout: необъявленный идентификатор
C++ error C2065: Out: необъявленный идентификатор
C++ error C2065: CIRCLE: необъявленный идентификатор
C++ Error C2065: необъявленный идентификатор
C++ Error C2065: xlineMAX: необъявленный идентификатор
C++ Error C2065: col_gray: необъявленный идентификатор

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11841 / 6820 / 771
Регистрация: 27.09.2012
Сообщений: 16,911
Записей в блоге: 2
Завершенные тесты: 1
10.05.2014, 12:23     Error C2065: _winmajor: необъявленный идентификатор #2
MSDN: _osver, _winmajor, _winminor, _winver
Dimka-novitsek
14 / 14 / 0
Регистрация: 26.04.2012
Сообщений: 1,091
10.05.2014, 14:31  [ТС]     Error C2065: _winmajor: необъявленный идентификатор #3
Понял!! Эти переменные что-то спициально обозначают, а не просто так. Что я понял очень примерно, почти не понял, но это и не настолько важно.

Но как избежать в программе ошибок?

Добавлено через 6 минут
operating systems Они операнды системы, тридцати двух битного виндовса.

Добавлено через 1 минуту
Мне где то, скажем выше майна написать

extern unsigned int _osver;

extern unsigned int _winmajor;

extern unsigned int _winminor;

extern unsigned int _winver;
???????????????????????????????????

Добавлено через 1 час 28 минут
Не могу обьявить эти переменные- не выше майна, не в нем самом или как-то еще..

Ошибка 2 error LNK2001: неразрешенный внешний символ "__winmajor" D:\MYPROG\CRt0.demo.c\CRt0.demo.c\CRt0.demo.c\CRt0.demo.obj CRt0.demo.c
Ошибка 3 error LNK2001: неразрешенный внешний символ "__winminor" D:\MYPROG\CRt0.demo.c\CRt0.demo.c\CRt0.demo.c\CRt0.demo.obj CRt0.demo.c
И т.п.

Добавлено через 41 секунду
Что означают понял а как использовать нет.
Yandex
Объявления
10.05.2014, 14:31     Error C2065: _winmajor: необъявленный идентификатор
Ответ Создать тему
Опции темы

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