Автор Тема: Урок C++: Оператор GOTO  (Прочетена 3274 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

onewg

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 0
  • -Получени: 1
  • Публикации: 62
Урок C++: Оператор GOTO
« -: 24 Март 2010, 21:26:57 »
Гото е оператор за безусловен преход, тоест при срещането на goto lаbel.
означава отиди на етикет  " lаbel "  отива на етикета lаbel без да се съобразява с нищо, просто скача за това и го наричат още джъмп орератор.

Защо го има в С++ този така овехтял и ненужен гото оператор.

Причината е че С++ е наследник от езика С както знаете, та езика С е

процедурноориентиран-пише се процедурно.
машиннонезависим-може да се компилира според системата.
машинноориентиран-съобразява се с някой особенности на компютрите, като например колко байта за задели за клетка и така нт.
 
език от по горно ниво от асемблера  " всъщност С се смята че той има малко по-ниска от средното ниво на машинна ориентация "  та така.

С++ просто наследява тази възможност, да прескача редове когато това е нужно, това е основата на програмата на ниско ниво..

НО! в абстрактните езици  " обектно ориентираните като С++ "  този оператор не намира приложение, понеже той работи само в рамките на основната програма, тоест на мейн структората, в обекти неработи..


За какво можем да го ползваме, при дадено условие да прескочим милиони ненужни редове което спестява много време за обхождането им...

wuser

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 85
  • -Получени: 49
  • Публикации: 2761
Отг: Урок C++: Оператор GOTO
« Отговор #1 -: 24 Март 2010, 21:31:10 »
Като чуя за гото и настръхвам. Припомня ми средновековната младост и безумното кодване на бъзик :(
Мъдростта на патилото
Perl Monks: PHP - it's "training wheels without the bike" -- Randal L. Schwartz


Дееба... чувствам се все едно обяснявам на майка ми как да си отвори пощата
"не работи"
WTF?!?!? к'во значи че не работи?
Не ти се компилира, дава ти грешка, вади ти грешни резултати, компютърът ти се изключва като го напишеш или на целия квартал му спира тока?
Stilgar

onewg

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 0
  • -Получени: 1
  • Публикации: 62
Отг: Урок C++: Оператор GOTO
« Отговор #2 -: 24 Март 2010, 21:34:40 »
wuser написа:
Цитат
Като чуя за гото и настръхвам. Припомня ми средновековната младост и безумното кодване на бъзик :(



Бейсик за времето си не беше по лош от останалите...

А асемблера в крайна сметка е пълен с jump команди..

Та да вметна поради това си естество С се ползва още в микроконтролерите и малките микропроцесори..
Това е така понеже той е точно баланса между какво иска човека и какво може машината..
Това е един от най яките езици ако гониш производителност...  :blush:

n3mo

  • Full Member
  • ***
  • Благодарности
  • -Казани: 3
  • -Получени: 3
  • Публикации: 117
Отг: Урок C++: Оператор GOTO
« Отговор #3 -: 24 Март 2010, 22:23:53 »
onewg написа:
Това е един от най яките езици ако гониш производителност...  :blush:[/quote]
И нервна криза. :) Но много ще се радвам ако направиш поредица за C, понеже аз уча C++, но имам желание да се запозная по-добре с C.
I don't wanna be just a memory...

echeveria

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 72
  • -Получени: 93
  • Публикации: 4836
Отг: Урок C++: Оператор GOTO
« Отговор #4 -: 24 Март 2010, 22:26:44 »
ам то за С има вече 4 готови филма ама нещо не съм доволен та не знам
Днес Печатарите използват парите за да купят мозъците на онези, които ги превъзхождат, за да ги накарат да им служат и така да се превърнат в жертва на посредствеността. Това ли е причината, поради която ги наричате благо?
<iframe src="http://www.corbindavenport.com/ubuntu/widget.html" style="width:

onewg

  • Jr. Member
  • **
  • Благодарности
  • -Казани: 0
  • -Получени: 1
  • Публикации: 62
Отг:Урок C++: Оператор GOTO
« Отговор #5 -: 25 Март 2010, 07:18:10 »
Разликата между С и С++ е долу горе следната..

С е процедурен функционален език, докато С++ е обектно ориентиран, на практика всички останали езици се равняват по си++ когато прочетеш за някой друг език там неминуемо ще пише  " обектният модел на този език е взет от С++  "  :)

Това не означава че в си++ не можеш да пишеш процедурно, напротив С++ може да работи и процедурно доста добре..

На практика С има други библиотеки за вход и изход на програмата, ако ще се занимаваш с машинен програмен интерфейс имай предвид че повечето PIC, MOTOROLA, AVR контролери имат компилатори само за С това може и да се промени естественно, но ако имаш 16 бита и 10-20 мегахерца честота  " Да правилно прочетохте, не е печатна грешка "  
При такива условия ти трябва оптимален език каквито са езиците на ниско ниво..
Най оптималният е асемблера разбира се, но и най трудният..

Не мога да правя за уроци за С понеже ще почвам уроците за обектите в С++ а това ще ми отнеме страшно много време..