הפונקציה itoa () משמשת להמרת סוג נתונים int לסוג נתונים מחרוזת בשפת C.
תחביר -
char * itoa ( int value, char * str, int base );
המחרוזת שאנו מניחים ב-buffer pass חייבת להיות גדולה מספיק כדי להחזיק את הפלט. מכיוון שערכי רדיוס יכולים להיות OCTAL(0 - 7), DECIMAL(0 - 9), או HEX(0 - 9, a - f). כאשר הרדיוס הוא DECIMAL, itoa() מייצר -
(void) sprintf(buffer, '%d', n);
כאן, מאגר מחזיר מחרוזת תווים.
כאשר הרדיוס הוא OCTAL, itoa() מעצב מספר שלם 'n' לקבוע אוקטלי ללא סימן.
וכאשר הרדיוס הוא HEX, itoa() מעצב מספר שלם 'n' לקבוע הקסדצימלי ללא סימן.
הערך הקסדצימלי יכלול אלפביתים קטנים.
ערך החזרה -
מצביע המחרוזת יוחזר. כאשר נעביר ארגומנט רדיקס לא חוקי, הפונקציה תחזיר NULL.
חלופה תואמת תקן -
- sprintf(str,'%d',value) - להמרה לבסיס עשרוני.
- sprintf(str,'%x',value) - להמרה לבסיס הקסדצימלי.
- sprintf(str,'%o',value) - להמרה לבסיס אוקטלי.
אַלגוֹרִיתְם:
Step 1: Take a number as argument Step 2: Create an empty string buffer to store result Step 3: Use sprintf() to convert number to string Step 4: End
קוד -
#include #include #include char* itoa(int num, char* buffer, int base) { int current = 0; if (num == 0) { buffer[current++] = '0'; buffer[current] = ' '; return buffer; } int num_digits = 0; if (num <0) { if (base="=" 10) num_digits ++; buffer[current]="-" ; current num *="-1;" } else return null; +="(int)floor(log(num)" log(base)) 1; while (current < num_digits) int base_val="(int)" pow(base, num_digits-1-current); num_val="num" base_val; char value="num_val" '0'; -="base_val" num_val; buffer; main() a="123456;" buffer[256]; (itoa(a, buffer, !="NULL)" printf('input="%d," base="%d," buffer="%s '," a, 10, buffer); b="-2310;" (itoa(b, b, c="10;" (itoa(c, 2) c, 2, 0; pre> <p> <strong>Output</strong> </p> <pre> Input = 123456, base = 10, Buffer = 123456 Input = -2310, base = 10, Buffer = -2310 Input = 10, base = 2, Buffer = 1010 </pre> <img src="//techcodeview.com/img/c-tutorial/58/itoa-function-c.webp" alt="itoa Function in C"> <h4>Note: But we have to keep in mind that while we are compiling with gcc, we have to use the '-lm' flag to include the math library.</h4> <p> <strong>gcc -o test.out test.c -lm</strong> </p> <hr></0)>
הערה: אבל עלינו לזכור שבזמן שאנו מקימים עם gcc, עלינו להשתמש בדגל '-lm' כדי לכלול את ספריית המתמטיקה.
gcc -o test.out test.c -lm
0)>