與ASCII碼相關(guān)的C語言字符串操作函數(shù)
C語言toascii()函數(shù):將字符轉(zhuǎn)換成對應(yīng)的ASCII碼
頭文件:
#include <ctype.h>
定義函數(shù):
int toascii(int c);
函數(shù)說明:toascii()會將參數(shù)c 轉(zhuǎn)換成7 位的unsigned char 值,第八位則會被清除,此字符即會被轉(zhuǎn)成ASCII碼字符。
返回值:將轉(zhuǎn)換成功的ASCII 碼字符值返回。
范例:將int 型a 轉(zhuǎn)換成ASSII 碼字符。
#include <stdlib.h> main(){ int a = 217; char b; printf("before toascii() : a value =%d(%c)\n", a, a); b = toascii(a); printf("after toascii(): a value =%d(%c)\n", b, b); }
執(zhí)行結(jié)果:
before toascii() : a value =217() after toascii() : a value =89(Y)
C語言strcoll()函數(shù):根據(jù)環(huán)境變量LC_COLLATE來比較字符串
頭文件:
#include <string.h>
strcoll() 函數(shù)根據(jù)環(huán)境變量LC_COLLATE來比較字符串,其原型為:
int strcoll( const char * str1, const char * str2 );
【參數(shù)說明】str1、str2 是要進(jìn)行比較的兩個字符串。
函數(shù)說明:strcoll() 會依環(huán)境變量 LC_COLLATE 所指定的文字排列次序來比較 s1 和 s2 字符串。
默認(rèn)情況下,LC_COLLATE 為"POSIX"或"C",strcoll() 和 strcmp() 一樣根據(jù)ASCII比較字符串大小。
對于設(shè)置了 LC_COLLATE 語言環(huán)境的情況下,則根據(jù) LC_COLLATE 設(shè)置的語言排序方式進(jìn)行比較。例如,漢字會根據(jù)拼音進(jìn)行比較。
【返回值】若字符串 str1 和 str2 相同則返回0。若 str1 大于 str2 則返回大于 0 的值,否則返回小于 0 的值。