ערכתי לאחרונה בתאריך 01.11.05 בשעה 14:42 בברכה, DOWNTOWN
1. אם אתם רוצים לרשום
או כל פונקציה אחרת שקשורה באובייקט של cin וזה לא פועל לכם, שימו לב שסגרתם כל שורה ב
endl אם אתם רוצים לרדת שורה
או ב flush אם אתם רוצים להישאר שורה.
למשל
#include <iostream>int main() { std::cout << "Hello world" << std::endl; std::cout << "I just love this world!" << std::endl; std::cout << "Press enter to exit" << std::flush; std::cin.get(); }
|
למרות שהיום רוב הקומפלירים מוסיפים את זה ככה שזה בדרך כלל לא יהיה הפיתרון, עדיין כדאי להשתמש בזה כי זאת גם דרך הכתיבה המומלצת והנוחה ביותר.
אם גם זה לא עזר
צריך להוסיף לפני זה את
הפונקציה הזאת בעצם מדלגת על אלמנט אחד לקריאה(אפשר גם לעשות יותר, אם זה מעניין אותכם, פשוט תגגלו).
לדוגמא:
#include <iostream>int main() { std::cout << "Hello world" << std::endl; std::cout << "I just love this world!" << std::endl; std::cout << "Press enter to exit" << std::flush; std::cin.ignore(); std::cin.get(); }
|
טיפ שני:
פונקציית ה
תמיד מחזירה int.
לעוד פרטים: http://www.research.att.com/~bs/bs_faq2.html#void-main
טיפ שלישי:
כשרוצים לחלק שתי מספרים שלמים במספר והתוצאה צריכה להיות מספר עשרוני יש בעיה.
לדוגמא:
#include <iostream>int main() { int x = 3; int y = 8; float result; result = y / x; std::cout << result << std::endl; }
|
התוצאה שתצא מזה תיהיה 2
אז מה שאנחנו עושים זה בעצם גורמים למחשב לחשוב שx ו y הם מספרים עשרוניים.
איך עושים את זה?
עם
static_cast<output_type>(variable)
|
לדוגמא:
#include <iostream>int main() { int x = 3; int y = 8; float result; result = static_cast<float>(y) / static_cast<float>(x); std::cout << result << std::endl; }
|
התוצאה שזה ייתן תיהיה 2.6667
לא מומלץ להשתמש בקאסטים(שינוי סוג) יותר מדי, גורם נפוץ מאוד לבאגים.
אך למרות זאת
הוא השיטה הכי בטוחה.
אם יש לי טעות, תקנו אותי.
s22holyshits33
אני מלך