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

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

Войти
Регистрация
Восстановить пароль
 
Доктор ТуамОсес
Заблокирован
#1

Почему нет варнинга на использование неиниц. переменной? - C++

18.06.2009, 15:43. Просмотров 629. Ответов 4
Метки нет (Все метки)

C++
1
2
3
4
5
6
    float  DD ;
float  WW ;
float * float_WW = &WW      ; // Берём адрес WW но при этом WW остаётся не инициализированной
        
cout << " DD == " << DD << endl ; // warning C4700: local variable 'DD' used without having been initialized
cout << " WW == " << WW << endl ; // Нет почему-то варнинга,  что переменная WW юзается без инициализации
Нет почему-то варнинга, что переменная WW юзается без инициализации
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.06.2009, 15:43
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Почему нет варнинга на использование неиниц. переменной? (C++):

Использование указателя. Почему глобальная переменная работает, а указатель нет? - C++
Не понимаю почему не работают указатели. Вроде все просто а результат не правильный. И еще если я объявляю 2-3-4 указателя, у них...

Ультиматум варнинга - C++
Добрый вечер, форум! Мужики, никто с таким ворнингом не сталкивался? Идея в том что бы вывести функцию часов в отдельный поток. Не пойму...

Использование одной переменной - C++
У меня дано два оператора n1=dist*dist; n2=dist/dist; хочу использовать одну переменную n которая принимала бы два эти...

Использование неинициализированной переменной - C++
Товарищи! Столкнулся с таким феноменом: обычно если объявленную, но неинициализированную переменную попытаться подставить в арифметическое...

Использование приватной переменной - C++
#include&lt;iostream&gt; #define N 100 using namespace std; class Mass { private: int a,n; public: Mass() ...

Почему нет доступа к переменной, находящейся вне метода Main? - C#
class Stack { int stack_size; static void Main(string args) { Console.WriteLine(&quot;Введите...

4
Gravity
563 / 557 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
18.06.2009, 16:14 #2
Выдача варнингов зависит от текущей настройки компилятора.
Например, GCC с опцией -Wall сразу же это фиксирует
Код
[serg@localhost C]$ g++ test.cpp -o test -Wall
test.cpp: In function ‘int main()’:
test.cpp:8: предупреждение: неиспользуемая переменная ‘float_WW’
test.cpp:10: предупреждение: ‘DD’ is used uninitialized in this function
0
Evg
Эксперт CАвтор FAQ
18040 / 6272 / 428
Регистрация: 30.03.2009
Сообщений: 17,257
Записей в блоге: 28
18.06.2009, 16:26 #3
Ворнинга нет, потому что было взятие адреса, которое в общем случае означает, что по этому адресу могли и записать что-то. gcc ну уровнях без оптимизаций возможно и не отловит ситуацию, что по взятому указателю записей не было. Но на уровнях с оптимизациями может и отловит
0
Доктор ТуамОсес
Заблокирован
19.06.2009, 12:54  [ТС] #4
Цитата Сообщение от Gravity Посмотреть сообщение
Выдача варнингов зависит от текущей настройки компилятора.
Например, GCC с опцией -Wall сразу же это фиксирует
Код
[serg@localhost C]$ g++ test.cpp -o test -Wall
test.cpp: In function ‘int main()’:
test.cpp:8: предупреждение: неиспользуемая переменная ‘float_WW’
test.cpp:10: предупреждение: ‘DD’ is used uninitialized in this function
Не вижу. Где варнинг относительно переменной WW?

Добавлено через 19 часов 45 минут 5 секунд
Видать просто MS VC++ недостаточно продвинутый компилятор. Этот компилятор выдал варнинги в обоих случаях
0
Evg
Эксперт CАвтор FAQ
18040 / 6272 / 428
Регистрация: 30.03.2009
Сообщений: 17,257
Записей в блоге: 28
19.06.2009, 13:56 #5
В 3-м посте я тебе уже объяснил. Компилятор, который "этот компилятор" - это gcc-4.1.2, который запускается с опциями оптимизаций
0
19.06.2009, 13:56
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.06.2009, 13:56
Привет! Вот еще темы с ответами:

Использование имени метода/переменной, указанного в переменной String - Java SE
public class Oll { String FishR = {&quot;R&quot;,&quot;U&quot;,&quot;Rb&quot;,&quot;U&quot;,&quot;R&quot;,&quot;U&quot;,&quot;U&quot;,&quot;Rb&quot;}; String FishL = {&quot;Lb&quot;,&quot;Ub&quot;,&quot;L&quot;,&quot;Ub&quot;,&quot;Lb&quot;,&quot;U&quot;,&quot;U&quot;,&quot;L&quot;}; ...

Ошибка: Нет доступа к \\* ВОзможно у вас нет прав на использование этого - Сети
Ошибка при работе сети. Выдаёт такую ошибку при попытке в карте сети зайти в свой компьютер. Что то не смог вспомнить что нужно седлать...

Использование переменной - C#
int new_pts = 635486; //использовать только 1 раз, для первого перехода по ссылке HttpWebRequest req =...

Использование переменной в формуле - VBA
Необходимо в формуле округление в большую сторону использовать значение переменной. sht3.Cells(7, 6).FormulaR1C1 = &quot;=ROUNDUP( &quot; &amp; mix &amp; &quot;...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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