Chuyển đổi số nguyên sang ký tự trong C

Bài viết đăng tại: https://programming.laptrinh.site

Hướng dẫn này giới thiệu cách chuyển đổi một giá trị số nguyên thành một giá trị ký tự trong C. Mỗi ký tự có một mã ASCII, vì vậy nó đã là một số trong C. Nếu bạn muốn chuyển đổi một số nguyên thành một ký tự, chỉ cần thêm '0' .

Thêm '0' để Chuyển đổi một int thành char

'0' có giá trị ASCII là 48. vì vậy, chúng ta phải thêm giá trị của nó vào giá trị số nguyên để chuyển đổi nó thành ký tự mong muốn. Chương trình như sau:

#include <stdio.h>
int main ( void ) { int number = 71 ;
char charValue = number + '0' ; printf( "The character value is :%c" ,charValue);
return 0 ; }

Đầu ra:

The character value is: w

Dưới đây là chương trình sẽ chuyển đổi một số nguyên thành ký tự chỉ trong khoảng từ 0 đến 9.

 #include <stdio.h>
int main ( void ) { int number = 7 ; char charValue = number + '0' ; printf( "The value is :%c" ,charValue); return 0 ; }

Đầu ra:

The value is: 7

Một chương trình khác để chuyển đổi một giá trị số nguyên thành một ký tự như sau:

#include<stdio.h>

int main(void)
{
    char charValue[] = "stringValueX";
    int anyNumber;
    for (anyNumber= 0; anyNumber< 10; ++anyNumber)
    {
        charValue[11] = anyNumber+ '0';
        puts(charValue);
    }
    return 0;
} 

Đầu ra:

 stringValue0 stringValue1 stringValue2 stringValue3 stringValue4 stringValue5 stringValue6 stringValue7 stringValue8 stringValue9

Gán một Giá trị int cho Giá trị char

Một cách khác để chuyển đổi giá trị số nguyên thành giá trị ký tự là gán giá trị số nguyên cho giá trị ký tự như sau: Giá trị ký tự tương ứng với giá trị số nguyên được in tại đây.

#include <stdio.h>
 int main ( void ) { int number = 65 ; char charvalue = number;
printf( "The character value :%c" , charvalue);
return 0 ; }

Đầu ra:

The character value : A

Dưới đây là một cách khác để chuyển đổi giá trị số nguyên thành giá trị ký tự. Ở đây, giá trị được đánh máy, vì vậy giá trị 67 được chuyển đổi thành giá trị ASCII tương ứng.

 #include <stdio.h>
int main ( void ) { int number = 67 ; char charValue = ( char )number; printf( "The character value = %c" , charValue);
return 0 ; }

Đầu ra:

The character value = C

sprintf() Chức năng chuyển đổi Int thành Char

Hàm sprintf() hoạt động giống như printf() nhưng thay vì gửi đầu ra tới bàn điều khiển, nó trả về chuỗi đã định dạng.

Đối số đầu tiên của hàm sprintf() là một con trỏ tới chuỗi đích. Các đối số còn lại giống như đối với printf() .

Cú pháp của sprintf()

int sprintf(char *strValue, const char *format, [arg1, arg2, ... ]);
  • strValue là một con trỏ tới kiểu dữ liệu char.
  • format được sử dụng để hiển thị loại đầu ra cùng với trình giữ chỗ.
  • [arg1,arg2...] là (các) số nguyên cần chuyển đổi.

Hàm ghi dữ liệu trong chuỗi được trỏ bởi strValue và trả về số ký tự được ghi cho strValue , ngoại trừ ký tự null. Giá trị trả về thường bị loại bỏ. Nếu có bất kỳ lỗi nào xảy ra trong quá trình hoạt động, nó sẽ trả về -1 . Chương trình chuyển đổi một số nguyên thành một ký tự như sau:

#include <stdio.h>
int main ( void ) { int number = 72 ; char charValue[ 1 ];
sprintf(charValue, "%c" , number); printf( "The character value = %s" , charValue);
return 0 ; }

Đầu ra:

The character value = H

URL Link

https://laptrinh.site/chuyen-doi-so-nguyen-sang-ky-tu-trong-c/

Viết bởi Duy Mạnh. Đã đăng ký bản quyền tác giả tại Creativecommons và DMCA