Terdapat satu set fungsi untuk dipanggil dalam C++ semasa berurusan dengan nilai alfanumerik. Fungsi ini memastikan bahawa nilai tidak bercampur dengan jenis data lain. Fungsi ini ialah isalpha() dan isdigit() yang digunakan untuk mengesan nilai abjad dan angka dalam rentetan masing-masing.
Isalpha() dalam C++
Fungsi isalpha() dalam C++ digunakan untuk menyemak sama ada aksara itu adalah abjad atau tidak dan untuk mentakrifkannya dalam C++ fail pengepala
Sintaks
Sintaks untuk fungsi isalpha() dalam C++ diberikan sebagai:
isalpha ( int ch ) ;
Di mana ch ialah watak di bawah semak.
Nilai Pulangan
Apabila nilai adalah abjad maka fungsi ini akan memberikan nilai bukan sifar, manakala sebaliknya, jika ia bukan abjad maka ia mengembalikan nilai sifar.
Contoh 1
Kod di bawah ialah program C++ mudah yang menggambarkan penggunaan fungsi isalpha() untuk menyemak sama ada nilai itu adalah abjad atau tidak:
#include#include
menggunakan ruang nama std ;
int utama ( ) {
int x = isalpha ( 'dua puluh satu' ) ;
cout << x ;
kembali 0 ;
}
Fail pengepala cctype disertakan, kerana ia memegang fungsi isalpha(). Integer x disimpan dengan nilai aksara untuk menyemak sama ada ia mengikut abjad atau tidak.
Watak input bukan abjad, jadi sifar dikembalikan kepada output.
Contoh 2
Kod di bawah ialah program C++ mudah yang menggambarkan penggunaan fungsi isalpha() dalam rentetan jenis C:
#include#include
#include
menggunakan ruang nama std ;
int utama ( ) {
char tali [ ] = 'hum$%^&890qwe@kuidsuidu' ;
int mengira = 0 , semak ;
untuk ( int i = 0 ; i <= strlen ( tali ) ; ++ i ) {
semak = isalpha ( tali [ i ] ) ;
jika ( semak )
++ mengira ;
}
cout << 'Bilangan abjad dalam rentetan: ' << mengira << endl ;
cout << 'Bilangan bukan abjad dalam rentetan : ' << strlen ( tali ) - mengira ;
kembali 0 ;
}
Dalam program ini, fail pengepala yang diperlukan diisytiharkan. Rentetan aksara diisytiharkan untuk menyimpan aksara, dan gelung untuk digunakan untuk menyemak bilangan abjad dalam rentetan. Jika rentetan didapati daripada abjad, maka teruskan menambah bilangan kiraan. Pada output, kembalikan bilangan abjad yang terdapat dalam rentetan dan bukan abjad juga dikira, yang boleh didapati dengan menolak kiraan abjad daripada jumlah bilangan aksara dalam rentetan.
Jumlah bilangan abjad didapati 15 dan bukan abjad ialah 8. Oleh itu, jumlah bilangan aksara rentetan didapati ialah 23.
Isdigit() dalam C++
Fungsi isdigit() dalam C++ digunakan untuk menyemak sama ada aksara yang dimasukkan adalah salah satu daripada sepuluh (0-9) digit perpuluhan atau tidak. Dalam kes nilai ialah angka atau digit maka ia akan mengembalikan nilai bukan sifar, jika tidak, ia mengembalikan 0, yang ditakrifkan dalam fail pengepala
Sintaks
Ini ialah sintaks untuk fungsi isdigit() dalam C++.
malah ( int char ) ;Ia mengambil integer tunggal sebagai hujah.
Nilai Pulangan
Apabila nilai adalah angka atau digit maka fungsi ini akan memberikan nilai bukan sifar, manakala sebaliknya, jika ia bukan angka maka ia mengembalikan nilai sifar.
Contoh 1
Kod di bawah ialah program C++ mudah yang menggambarkan penggunaan fungsi isdigit() dalam C++:
#include#include
menggunakan ruang nama std ;
int utama ( ) {
int x = malah ( '7' ) ;
cout << x ;
kembali 0 ;
}
Dalam kod sumber ini, integer x ditakrifkan untuk menyimpan nilai, dan fungsi isdigit() dipanggil untuk menyemak aksara ini dan mengembalikan output. Watak didapati sebagai angka, jadi ia mengembalikan nilai bukan sifar:
Contoh 2
Contoh ini menggambarkan penggunaan fungsi isdigit() untuk menyemak kehadiran digit dalam rentetan:
#include#include
#include
menggunakan ruang nama std ;
int utama ( ) {
char tali [ ] = '45ty67d;' ;
int semak ;
cout << 'Digit dalam rentetan ialah:' << endl ;
untuk ( int i = 0 ; i < strlen ( tali ) ; i ++ ) {
semak = malah ( tali [ i ] ) ;
jika ( semak )
cout << tali [ i ] << endl ;
}
kembali 0 ;
}
Dalam kod sumber ini, fail pengepala yang diperlukan ditakrifkan untuk melaksanakan program. Untuk menyimpan aksara, rentetan ditakrifkan dan gelung for berulang melalui rentetan dan terus menyemak kehadiran digit pada setiap lokasi. Hasilnya disimpan dalam rentetan[i] dan Empat digit dalam rentetan ditemui dan dicetak pada output:
Kesimpulan
Terdapat satu set fungsi untuk dipanggil dalam C++ semasa berurusan dengan nilai alfanumerik. Untuk menyemak kehadiran aksara atau abjad dalam C++ fungsi isalpha() ini digunakan manakala fungsi isdigit() dalam C++ digunakan untuk menyemak sama ada aksara yang dimasukkan adalah salah satu daripada sepuluh (0-9) digit perpuluhan atau tidak. Dalam kes jawapan positif, fungsi ini mengembalikan nilai bukan sifar, jika tidak, ia mengembalikan 0. Kedua-dua fungsi ini ditakrifkan dalam fail pengepala