Грешка: Недефинисана референца на Пов у Ц++

Greska Nedefinisana Referenca Na Pov U C



Када радите у програмским језицима, они морају да садрже библиотеке, функције, синтаксу итд. Дакле, постоји могућност грешке у нашим програмима. Постоје разне грешке различитих врста у Ц++ програмирању. Овде ћемо разговарати о грешци „недефинисана референца на пов“ у Ц++ програмирању. Понекад се чини да „пов није декларисано у овом опсегу“ и оба имају исто значење. Ова грешка се јавља када не додамо датотеку заглавља у наш Ц++ код или можда нећемо правилно компајлирати код. Такође ћемо истражити датотеке заглавља које помажу у уклањању те грешке из нашег Ц++ кода.

Решавање недефинисане референце на Пов у Ц++

Када се бавимо овом поруком о грешци, једноставно додајемо датотеку заглавља у наш код у којем је декларисана функција „пов()“. Ово уклања грешку из нашег кода. Датотеке заглавља које се користе за функцију „пов()“ су:

  • #инцлуде <цматх> датотека заглавља
  • #инцлуде <битс/стдц++.х> датотека заглавља
  • #инцлуде <матх.х> датотека заглавља

Ево неких кодова који ће показати како се ова грешка јавља и како да решите ову грешку у Ц++ програмирању.







Пример 1:

У нашем првом примеру додајемо датотеку заглавља „#инцлуде <иостреам>“ која помаже у обављању улазних и излазних задатака. Затим морамо да напишемо „усинг намеспаце стд“ иза овог заглавља. Ово помаже у спречавању забуне која може настати због два ИД-а који деле исто име.



После овога, овде позивамо функцију „инт маин()“ која се користи за дефинисање почетка нашег Ц++ кода. Сада, у овој функцији, користимо наредбу “цоут<<” која помаже у штампању датих информација на екрану. Наредба “<< ендл” се користи за померање нашег показивача на нови ред.



Након тога, користи се функција “пов()” у којој морамо проћи два параметра: базу и експонент. Овде додајемо „10, 4“, у којима је „10“ основни број, а „4“ је експонент. На крају овог кода убацујемо још једну изјаву која је „ретурн 0“.





Код 1:

#инцлуде <иостреам>
Користећи именског простора стд ;
инт главни ( ) {
цоут << 'Овде се користи функција напајања' ;
цоут << ендл << ендл ;
цоут << пов ( 10 , 4 ) ;
повратак 0 ;
}

Излаз:
Након што завршимо код, морамо га компајлирати и покренути. Када компајлирамо претходни код, појављује се порука о грешци која каже да „пов није декларисан у овом опсегу“. Ова грешка се појављује јер нисмо додали датотеку заглавља у којој је декларисана ова функција „пов()“. Да бисмо решили ову грешку, морамо да убацимо било коју од датотека заглавља које смо раније споменули.



Сада морамо да решимо ову грешку да бисмо добили резултат. За ово смо направили мале промене у коду. У истом коду додајемо датотеку заглавља „#инцлуде“ после датотеке заглавља „“. Ово помаже да се уклони грешка претходног кода јер је функција „пов()“ декларисана у овој датотеци заглавља.

Ажурирани код 1:

#инцлуде <иостреам>
#инцлуде <цматх>
Користећи именског простора стд ;
инт главни ( ) {
цоут << 'Овде се користи функција напајања' ;
цоут << ендл << ендл ;
цоут << пов ( 10 , 4 ) ;
повратак 0 ;
}

Излаз :
Овај ажурирани код је сада компајлиран и успешно ради, а ми добијамо излаз кода. Грешка претходног кода је сада уклоњена и следећи резултат се појављује након компилације:

Пример 2:

Овде имамо још један пример у Ц++. Након што смо додали “<иостреам>” и “стд”, сада позивамо функцију “маин()”. Унутар маин() једноставно штампамо линију уз помоћ „цоут“ наредбе. Затим декларишемо три променљиве целобројног типа података под називом „нум, екп, анд ресулт“. Након тога, иницијализујемо „нум” са „25” и „екп” са „2”. Променљива „резултат“ се иницијализује функцијом „пов()“ у којој се „нум“ и „екп“ прослеђују као два параметра ове функције. Након овога, приказујемо тај резултат снаге користећи „цоут“.

Код 2:

#инцлуде <иостреам>
Користећи именског простора стд ;
инт главни ( )
{
цоут << 'Проналазимо моћ броја овде у Ц++ програмирању.' << ендл << ендл ;
инт на једном, екп , резултат ;
на једном = 25 ;
екп = 2 ;
резултат = пов ( на једном, екп ) ;
цоут << 'Снага броја је = ' << резултат ;
цоут << ендл ;
повратак 0 ;
}

Излаз :
Сада, овај нови код приказује исту поруку о грешци као и претходни пример. Разлог је тај што је исто тако јер нисмо убацили датотеку заглавља помоћу које можемо добити ову функцију „пов()“.

Сада додајемо датотеку заглавља у наш код који је датотека заглавља „цматх“. Ова датотека заглавља се користи у Ц++ програмирању за добијање функције „пов()“ нашег кода. Након додавања датотеке заглавља „#инцлуде“, добијамо потребан излаз нашег кода.

Пример 3:

Сада имамо још један пример. Овде, после функције „маин()“, декларишемо и иницијализујемо „басе_нум“ типа података „лонг доубле“ са „4.5“. Затим, такође декларишемо и иницијализујемо „екпо_нум“ типа података „интегер“ са „-2“. Такође декларишемо још једну променљиву имена „ресулт_1“ која је типа „лонг доубле“.

Сада користимо функцију „пов()“ да иницијализујемо променљиву „ресулт_1“ и проследимо „басе_нум“ и „екпо_нум“ овој функцији. После овога штампамо резултат помоћу команде „цоут“. Сада декларишемо и иницијализујемо још две променљиве, „ф_басеНум“ и „ф_екпоНум“, са типом података „флоат“. Иницијализујемо их са '-9.2' и '5', респективно. Затим декларишемо „резултат_2“ као „двоструки“ тип података. Сада иницијализујемо променљиву „ресулт_22“ користећи метод „пов()“, преносећи „ф_басеНум“ и „ф_екпоНум“. Затим користимо команду „цоут“ за штампање резултата.

Код 3:

#инцлуде <иостреам>
Користећи именског простора стд ;
инт главни ( ) {
дугачак дупло база_број = 4.5 ;
инт екпо_нум = - 2 ;
дугачак дупло резултат_1 ;
резултат_1 = пов ( басе_нум, екпо_нум ) ;
цоут << 'Базни_нум овде је у дугом двоструком, а екпо_нум је у целобројном типу ' << ендл << ендл ;
цоут << база_број << '^' << екпо_нум << ' = ' << резултат_1 << ендл << ендл ;
пловак ф_басеНум = - 9.2 , ф_екпоНум = 5 ;
дупло резултат_2 ;
резултат_2 = пов ( ф_басеНум, ф_екпоНум ) ;
цоут << 'Ф_басеНум овде је у флоат-у, а ф_екпоНум је у двоструком типу ' << ендл << ендл ;
цоут << ф_басеНум << '^' << ф_екпоНум << ' = ' << резултат_2 ;
повратак 0 ;
}

Излаз :
Након компајлирања овог кода, добијамо поруку о грешци која каже да функција напајања није декларисана у овом опсегу. То значи да смо пропустили датотеку заглавља у којој је ова функција декларисана.

Грешка је сада отклоњена коришћењем датотеке заглавља „<матх.х>”. Овог пута користимо датотеку заглавља „#инцлуде <матх.х>“ јер ова датотека заглавља такође помаже у решавању те грешке.

Након постављања овог кода, код је успешно усклађен и добијамо излаз нашег кода који је такође приказан овде.

Такође можемо добити излаз користећи другу датотеку заглавља, датотеку заглавља „<битс/стдц++.х>”. Користимо све стандардне библиотеке у нашем програмирању уз помоћ ове датотеке заглавља.

Након додавања “<битс/стдц++.х>”, добијамо тражени излаз јер “битс/стдц++.х>” садржи сваку стандардну библиотеку. Дакле, грешка је сада уклоњена након додавања ове библиотеке у наш код, а излазни резултат је приказан овде.

Закључак

У овом чланку, грешка „недефинисана референца на пов“ или „пов није декларисана у овом опсегу“ у Ц++ програмирању је такође детаљно размотрена. Такође смо истражили начине или датотеке заглавља који помажу у уклањању грешке за успешну компилацију кода. Демонстрирали смо примере у којима смо приказали поруку о грешци и резултат кода након уклањања те поруке о грешци.