ข้อผิดพลาด: การอ้างอิงที่ไม่ได้กำหนดถึง Pow ใน C ++

Khx Phid Phlad Kar Xangxing Thi Mi Di Kahnd Thung Pow Ni C



เมื่อทำงานในภาษาการเขียนโปรแกรม ภาษาเหล่านั้นจะต้องมีไลบรารี ฟังก์ชัน ไวยากรณ์ ฯลฯ ดังนั้นจึงมีโอกาสเกิดข้อผิดพลาดในโปรแกรมของเรา มีข้อผิดพลาดหลายประเภทในการเขียนโปรแกรม C++ ที่นี่ เราจะหารือเกี่ยวกับข้อผิดพลาด 'การอ้างอิงถึง pow ที่ไม่ได้กำหนด' ในการเขียนโปรแกรม C++ บางครั้งปรากฏว่า “ไม่ได้ประกาศอำนาจในขอบเขตนี้” และทั้งสองมีความหมายเหมือนกัน ข้อผิดพลาดนี้เกิดขึ้นเมื่อเราไม่เพิ่มไฟล์ส่วนหัวในโค้ด C++ ของเรา หรือเราอาจรวบรวมโค้ดไม่ถูกต้อง นอกจากนี้เรายังจะสำรวจไฟล์ส่วนหัวที่ช่วยในการลบข้อผิดพลาดดังกล่าวออกจากโค้ด C++ ของเรา

การแก้ไขการอ้างอิงที่ไม่ได้กำหนดถึง Pow ใน C ++

เมื่อจัดการกับข้อความแสดงข้อผิดพลาดนี้ เราเพียงเพิ่มไฟล์ส่วนหัวในโค้ดของเราซึ่งมีการประกาศฟังก์ชัน “pow()” สิ่งนี้จะลบข้อผิดพลาดออกจากโค้ดของเรา ไฟล์ส่วนหัวที่ใช้สำหรับฟังก์ชัน “pow()” คือ:

  • #include ไฟล์ส่วนหัว
  • #include ไฟล์ส่วนหัว
  • #include ไฟล์ส่วนหัว

ต่อไปนี้เป็นโค้ดบางส่วนที่จะแสดงให้เห็นว่าข้อผิดพลาดนี้เกิดขึ้นได้อย่างไร และวิธีแก้ไขข้อผิดพลาดนี้ในการเขียนโปรแกรม C++







ตัวอย่างที่ 1:

ในตัวอย่างแรกของเรา เราเพิ่มไฟล์ส่วนหัว “#include ” ซึ่งช่วยในการปฏิบัติงานอินพุตและเอาต์พุต จากนั้นเราจะต้องเขียน 'using namespace std' หลังส่วนหัวนี้ ซึ่งจะช่วยป้องกันความสับสนที่อาจเกิดขึ้นจาก ID สองอันที่ใช้ชื่อเดียวกัน



หลังจากนี้ เราจะเรียกฟังก์ชัน 'int main()' ที่นี่ ซึ่งใช้เพื่อกำหนดการเริ่มโค้ด C++ ของเรา ในฟังก์ชันนี้ เราใช้คำสั่ง 'cout<<' ซึ่งช่วยในการพิมพ์ข้อมูลที่กำหนดให้บนหน้าจอแสดงผล คำสั่ง '<< endl' ใช้เพื่อเลื่อนตัวชี้ไปที่บรรทัดใหม่



หลังจากนี้ ฟังก์ชัน 'pow()' จะถูกใช้โดยเราต้องส่งพารามิเตอร์สองตัว: ฐานและเลขชี้กำลัง ที่นี่เราบวก '10, 4' โดย '10' เป็นเลขฐานและ '4' เป็นเลขชี้กำลัง ในตอนท้ายของโค้ดนี้ เราจะแทรกคำสั่งอีกหนึ่งคำสั่งซึ่งก็คือ 'return 0'





รหัส 1:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( ) {
ศาล << 'ฟังก์ชั่นพลังงานถูกใช้ที่นี่' ;
ศาล << สิ้นสุด << สิ้นสุด ;
ศาล << ธาร ( 10 , 4 ) ;
กลับ 0 ;
}

เอาท์พุท:
หลังจากเขียนโค้ดเสร็จแล้ว เราต้องคอมไพล์และรันมัน เมื่อเรารวบรวมโค้ดก่อนหน้านี้ ข้อความแสดงข้อผิดพลาดที่ระบุว่า 'ไม่ได้ประกาศ pow ในขอบเขตนี้' จะปรากฏขึ้น ข้อผิดพลาดนี้ปรากฏขึ้นเนื่องจากเราไม่ได้เพิ่มไฟล์ส่วนหัวซึ่งมีการประกาศฟังก์ชัน 'pow()' นี้ เพื่อแก้ไขข้อผิดพลาดนี้ เราต้องแทรกไฟล์ส่วนหัวที่เรากล่าวถึงก่อนหน้านี้



ตอนนี้เราจำเป็นต้องแก้ไขข้อผิดพลาดนี้เพื่อให้ได้ผลลัพธ์ สำหรับสิ่งนี้ เราได้ทำการเปลี่ยนแปลงเล็กน้อยในโค้ด ในโค้ดเดียวกัน เราจะเพิ่มไฟล์ส่วนหัว “#include ” หลังไฟล์ส่วนหัว “” ซึ่งจะช่วยลบข้อผิดพลาดของโค้ดก่อนหน้าเนื่องจากมีการประกาศฟังก์ชัน 'pow()' ในไฟล์ส่วนหัวนี้

อัปเดตรหัส 1:

#รวม
#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( ) {
ศาล << 'ฟังก์ชั่นพลังงานถูกใช้ที่นี่' ;
ศาล << สิ้นสุด << สิ้นสุด ;
ศาล << ธาร ( 10 , 4 ) ;
กลับ 0 ;
}

เอาท์พุต : :
รหัสที่อัปเดตนี้ได้รับการคอมไพล์และทำงานได้สำเร็จ และเราได้รับผลลัพธ์ของรหัส ขณะนี้ข้อผิดพลาดของโค้ดก่อนหน้านี้ถูกลบออกแล้ว และผลลัพธ์ต่อไปนี้จะปรากฏขึ้นหลังจากการคอมไพล์:

ตัวอย่างที่ 2:

เรามีอีกตัวอย่างหนึ่งใน C++ หลังจากเพิ่ม “ ” และ “std” แล้ว ตอนนี้เราเรียกฟังก์ชัน “main()” ภายใน main() เราเพียงแค่พิมพ์บรรทัดโดยใช้คำสั่ง 'cout' จากนั้นเราจะประกาศตัวแปรประเภทข้อมูลจำนวนเต็มสามตัวแปรชื่อ 'num, exp และ result' หลังจากนี้ เราจะเริ่มต้นด้วย 'num' ด้วย '25' และ 'exp' ด้วย '2' ตัวแปร 'result' เริ่มต้นได้ด้วยฟังก์ชัน 'pow()' ซึ่งจะส่งผ่าน 'num' และ 'exp' เป็นพารามิเตอร์สองตัวของฟังก์ชันนี้ หลังจากนี้เราจะแสดงผลพลังนั้นโดยใช้ 'cout'

รหัส 2:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( )
{
ศาล << 'เรากำลังค้นหาพลังของตัวเลขในการเขียนโปรแกรม C++' << สิ้นสุด << สิ้นสุด ;
ภายใน หนึ่ง ประสบการณ์ , ผลลัพธ์ ;
หนึ่ง = 25 ;
ประสบการณ์ = 2 ;
ผลลัพธ์ = ธาร ( หนึ่ง ประสบการณ์ ) ;
ศาล << “เลขยกกำลังคือ =” << ผลลัพธ์ ;
ศาล << สิ้นสุด ;
กลับ 0 ;
}

เอาท์พุต : :
ตอนนี้โค้ดใหม่นี้แสดงข้อความแสดงข้อผิดพลาดเหมือนกับตัวอย่างก่อนหน้านี้ เหตุผลก็คือว่ามันเหมือนกันเพราะเราไม่ได้แทรกไฟล์ส่วนหัวซึ่งเราจะได้รับฟังก์ชัน 'pow()' นี้

ตอนนี้เราเพิ่มไฟล์ส่วนหัวลงในโค้ดของเราซึ่งก็คือไฟล์ส่วนหัว 'cmath' ไฟล์ส่วนหัวนี้ใช้ในการเขียนโปรแกรม C++ เพื่อรับฟังก์ชัน 'pow()' ของโค้ดของเรา หลังจากเพิ่มไฟล์ส่วนหัว “#include ” แล้ว เราจะได้ผลลัพธ์ที่ต้องการจากโค้ดของเรา

ตัวอย่างที่ 3:

ตอนนี้เรามีอีกตัวอย่างหนึ่ง ที่นี่ หลังจากฟังก์ชัน 'main()' เราจะประกาศและเริ่มต้น 'base_num' ของประเภทข้อมูล 'long double' ด้วย '4.5' จากนั้น เรายังประกาศและเริ่มต้นประเภทข้อมูล 'expo_num' ของ 'จำนวนเต็ม' ด้วย '-2' นอกจากนี้เรายังประกาศตัวแปรอีกหนึ่งชื่อ 'result_1' ซึ่งเป็นประเภทข้อมูล 'long double'

ตอนนี้เราใช้ฟังก์ชัน “pow()” เพื่อเริ่มต้นตัวแปร “result_1” และส่งผ่าน “base_num” และ “expo_num” ไปยังฟังก์ชันนี้ หลังจากนั้นเราจะพิมพ์ผลลัพธ์โดยใช้คำสั่ง “cout” ตอนนี้ เราประกาศและเริ่มต้นตัวแปรอีกสองตัว “f_baseNum” และ “f_expoNum” ด้วยประเภทข้อมูล “float” เราเริ่มต้นด้วย '-9.2' และ '5' ตามลำดับ จากนั้น เราจะประกาศ 'result_2' เป็นประเภทข้อมูล 'double' ตอนนี้เราเริ่มต้นตัวแปร “result_22” โดยใช้วิธี “pow()” โดยส่งผ่านใน “f_baseNum” และ “f_expoNum” ต่อไปเราใช้คำสั่ง “cout” เพื่อพิมพ์ผลลัพธ์

รหัส 3:

#รวม
โดยใช้ เนมสเปซ มาตรฐาน ;
ภายใน หลัก ( ) {
ยาว สองเท่า base_num = 4.5 ;
ภายใน expo_num = - - 2 ;
ยาว สองเท่า ผลลัพธ์_1 ;
ผลลัพธ์_1 = ธาร ( base_num, expo_num ) ;
ศาล << 'base_num ที่นี่อยู่ในรูป long double และ expo_num อยู่ในประเภทจำนวนเต็ม ' << สิ้นสุด << สิ้นสุด ;
ศาล << base_num << '^' << expo_num << ' = ' << ผลลัพธ์_1 << สิ้นสุด << สิ้นสุด ;
ลอย f_baseหมายเลข = - - 9.2 , f_expoNum = 5 ;
สองเท่า ผลลัพธ์_2 ;
ผลลัพธ์_2 = ธาร ( f_baseNum, f_expoNum ) ;
ศาล << 'f_baseNum ที่นี่อยู่ในรูปแบบ float และ f_expoNum อยู่ในประเภทคู่' << สิ้นสุด << สิ้นสุด ;
ศาล << f_baseหมายเลข << '^' << f_expoหมายเลข << ' = ' << ผลลัพธ์_2 ;
กลับ 0 ;
}

เอาท์พุต : :
หลังจากรวบรวมโค้ดนี้แล้ว เราได้รับข้อความแสดงข้อผิดพลาดที่แจ้งว่าฟังก์ชันกำลังไม่ได้ถูกประกาศในขอบเขตนี้ หมายความว่าเราพลาดไฟล์ส่วนหัวซึ่งมีการประกาศฟังก์ชันนี้

ขณะนี้ข้อผิดพลาดได้รับการแก้ไขแล้วโดยใช้ไฟล์ส่วนหัว “” คราวนี้ เราใช้ไฟล์ส่วนหัว “#include ” เนื่องจากไฟล์ส่วนหัวนี้ยังช่วยในการแก้ไขข้อผิดพลาดนั้นด้วย

หลังจากวางสิ่งนี้แล้ว โค้ดก็จะถูกปฏิบัติตามสำเร็จ และเราได้รับผลลัพธ์ของโค้ดของเราซึ่งแสดงไว้ที่นี่ด้วย

เรายังอาจได้รับเอาต์พุตโดยใช้ไฟล์ส่วนหัวอื่น ซึ่งก็คือไฟล์ส่วนหัว “ ” เราใช้ไลบรารีมาตรฐานทั้งหมดในการเขียนโปรแกรมของเราโดยมีไฟล์ส่วนหัวนี้ช่วย

หลังจากเพิ่ม “ ” เราจะได้รับเอาต์พุตที่ต้องการ เนื่องจาก “bits/stdc++.h>” มีไลบรารีมาตรฐานทุกไลบรารี ดังนั้น ข้อผิดพลาดจะถูกลบออกไปแล้วหลังจากเพิ่มไลบรารี่นี้ลงในโค้ดของเรา และผลลัพธ์ที่ได้จะแสดงไว้ที่นี่

บทสรุป

ในบทความนี้ ข้อผิดพลาด 'การอ้างอิงที่ไม่ได้กำหนดถึง pow' หรือ 'pow ไม่ได้ถูกประกาศในขอบเขตนี้' ในการเขียนโปรแกรม C++ ยังได้กล่าวถึงโดยละเอียดอีกด้วย นอกจากนี้เรายังสำรวจวิธีการหรือไฟล์ส่วนหัวที่ช่วยในการลบข้อผิดพลาดเพื่อให้การรวบรวมโค้ดประสบความสำเร็จ เราสาธิตตัวอย่างที่เราแสดงข้อความแสดงข้อผิดพลาดและผลลัพธ์ของโค้ดหลังจากลบข้อความแสดงข้อผิดพลาดนั้นแล้ว