1、itoa
原型:extern char *itoa(int i);
用法:#include <stdlib.h>
功能:把整数i转换成字符串
说明:返回指向转换后的字符串的指针
2、atoi
定义于头文件
int atoi( const char *str );
long atol( const char *str );
long long atoll( const char *str );
转译 str 所指向的字节字符串中的整数值。
3、atof
定义于头文件
double atof( const char *str );
转译 str 所指向的字节字符串中的浮点值。
4、std::isalpha
定义于头文件
int isalpha( int ch );
检查给定字符是否为当前安装的 C 本地环境分类为字母字符。默认本地环境中,下列字符为字母:
uppercase letters ABCDEFGHIJKLMNOPQRSTUVWXYZ
lowercase letters abcdefghijklmnopqrstuvwxyz
5、std::isalnum
定义于头文件
int isalnum( int ch );
检查给定字符是否为当前 C 本地环境分类为字母数字字符。默认本地环境中,下列字符为字母数字:
数字( 0123456789 )
大写字母( ABCDEFGHIJKLMNOPQRSTUVWXYZ )
小写字母( abcdefghijklmnopqrstuvwxyz )
6、std::isspace
定义于头文件
int isspace( int ch );
检查给定的字符在当前的 C 本地环境中是否是空白字符。在默认的本地环境中,空白字符是:
空格 (0x20, ’ ')
换页 (0x0c, ‘\f’)
换行 (0x0a, ‘\n’)
回车 (0x0d, ‘\r’)
水平制表符 (0x09, ‘\t’)
垂直制表符 (0x0b, ‘\v’)
7、isblank
原型:extern int isblank(int c);
用法:#include <ctype.h>
功能:判断字符c是否为TAB或空格
说明:当c为TAB或空格时,返回非零值,否则返回零。
8、isspace
原型:extern int isspace(int c);
用法:#include <ctype.h>
功能:判断字符c是否为空白符
说明:当c为空白符时,返回非零值,否则返回零。
空白符指空格、水平制表、垂直制表、换页、回车和换行符。
9、strtok
原型:extern char *strtok(char *s, char *delim);
用法:#include <string.h>
功能:分解字符串为一组标记串。s为要分解的字符串,delim为分隔符字符串。
说明:首次调用时,s必须指向要分解的字符串,随后调用要把s设成NULL。
10、sort、sotr_s
原型:default (1)
template
void sort (RandomAccessIterator first, RandomAccessIterator last);
custom (2)
template <class RandomAccessIterator, class Compare>
void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp);
用法:#icnlude
功能:以升序排序范围 [first, last) 中的元素。不保证维持相等元素的顺序。
11、lower_bound
12、upper_bound
13.transform
功能:转换字符串大小写
头文件:algorithm
原型:
/**
* @brief Perform an operation on a sequence.
* @ingroup mutating_algorithms
* @param __first An input iterator.
* @param __last An input iterator.
* @param __result An output iterator.
* @param __unary_op A unary operator.
* @return An output iterator equal to @p __result+(__last-__first).
*
* Applies the operator to each element in the input range and assigns
* the results to successive elements of the output sequence.
* Evaluates @p *(__result+N)=unary_op(*(__first+N)) for each @c N in the
* range @p [0,__last-__first).
*
* @p unary_op must not alter its argument.
*/
template<typename _InputIterator, typename _OutputIterator,
typename _UnaryOperation>
_OutputIterator
transform(_InputIterator __first, _InputIterator __last,
_OutputIterator __result, _UnaryOperation __unary_op)
{
// concept requirements
__glibcxx_function_requires(_InputIteratorConcept<_InputIterator>)
__glibcxx_function_requires(_OutputIteratorConcept<_OutputIterator,
// "the type returned by a _UnaryOperation"
__typeof__(__unary_op(*__first))>)
__glibcxx_requires_valid_range(__first, __last);
for (; __first != __last; ++__first, ++__result)
*__result = __unary_op(*__first);
return __result;
}
std::string stddd = "AEij113BBKIw";
transform(stddd.begin(), stddd.end(), stddd.begin(), ::tolower);//转小写
transform(stddd.begin(), stddd.end(), stddd.begin(), ::toupper);//转大写
printf("%s\n", stddd.c_str());
字符串类型判断
// if (std::isalnum(msg[i]))
// {
// printf("数字 %c %d\n",msg[i],std::isalnum(msg[i]));
// }
// else if (std::isspace(msg[i]))
// {
// printf("空格 %c %d\n",msg[i],std::isspace(msg[i]));
// }
// else if (std::ispunct(msg[i]))
// {
// printf("符号 %c %d\n",msg[i],std::ispunct(msg[i]));
// }
// else
// {
// printf("中文 %x\n",msg[i]);
// }