C/C++库函数(tolower/toupper)实现字母的大小写转换

原创 2016年05月30日 18:15:43
C/C++库函数(tolower/toupper)实现字母的大小写转换


    本文将介绍库函数实现字母的大小写转换,常用到的是在ctype.h(C++中是cctype)库文件下定义的函数方法。首先来看一下C下tolower/toupper函数实现原型:
int tolower(int c)
{
	if ((c >= 'A') && (c <= 'Z'))
		return c + ('a' - 'A');
	return c;
}

int toupper(int c)
{
	if ((c >= 'a') && (c <= 'z'))
		return c + ('A' - 'a');
	return c;
}
接下来用两个小demo来演示一下。
C的实现:
#include<string.h>   //strlen
#include<stdio.h>    //printf
#include<ctype.h>    //tolower
int main()
{
    int i;
    char string[] = "THIS IS A STRING";
    printf("%s\n", string);
    for (i = 0; i < strlen(string); i++)
    {
        string[i] = tolower(string[i]);
    }
    printf("%s\n", string);
    printf("\n");
}
保存为xxx.c文件,执行: gcc -o xxx xxx.c 生成执行文件xxx。运行:./xxx 查看效果:

以上是C 的实现,同样的,在C++下的实现如下:
#include <iostream>
#include <string>
#include <cctype>
using namespace std;
int main()
{
    string str= "THIS IS A STRING";
    for (int i=0; i <str.size(); i++)
       str[i] = tolower(str[i]);
    cout<<str<<endl;
    return 0;
}
保存为xxx.cpp,执行 g++ xxx.cpp 生成执行文件 a.out,执行a.out,效果如下:


以上的demo实现的是大写到小写的转换,同样的,小写到大写的转换方式相同,将tolower换成toupper即可。

版权声明:本文为博主原创文章,未经博主允许不得转载。

C++ string大小写转换以及transform,tolower,toupper,用法

C++中没有string直接转换大小写的函数,需要自己实现。一般来讲,可以用stl的algorithm实现: #include #include #include ...
  • qq_31186409
  • qq_31186409
  • 2016年01月20日 00:11
  • 6118

C++tolower函数用法总结

c++者中有一个函数tolower。这个函数是处理字符串的函数。将大写转换成小写.大写是指ABCDEFGHIJKLMNOPQRSTUVMXYZ转换后变成abcdefghijklmnopqrstuvwx...
  • hhq420684
  • hhq420684
  • 2013年07月24日 11:40
  • 5014

tolower函数toupper函数

C语言标准库速查 http://ganquan.info/standard-c/function/tolower tolower实现将字符c转化位小写英文字母 说明:如果是非字母或者本来就是小写...
  • Vincentlmeng
  • Vincentlmeng
  • 2017年05月09日 22:30
  • 763

C语言实现大小写转换的三种方法

今天心血来潮,总结了下大小写转换的方法,大致有三种。 1.使用C语言...
  • Zidane_2014
  • Zidane_2014
  • 2014年09月09日 16:55
  • 9549

(c语言)字符串的大小写字母转化函数

问题描述: 编写一个函数my_strlwr实现将一个字符串中的大写字母转化为小写字母,小写字母不改变,并将其输出。 程序分析: 大写字母转化为小写字母,根据其ASCII码值的关系,加上32就可以得到。...
  • live_wyq
  • live_wyq
  • 2015年04月17日 11:25
  • 3649

toupper函数

头文件:#include 定义函数:int toupper(int c); 函数说明:若参数 c 为小写字母则将该对应的大写字母返回. 返回值:返回转换后的大写字母, 若不须转换则...
  • laogaoAV
  • laogaoAV
  • 2014年01月13日 23:14
  • 2977

C语言toupper()函数:将小写字母转换为大写字母

头文件:#include 定义函数:int toupper(int c); 函数说明:若参数 c 为小写字母则将该对应的大写字母返回。 返回值:返回转换后的大写字母,若不须转换则将...
  • huangjin0507
  • huangjin0507
  • 2016年08月11日 12:13
  • 4256

C++字母大小写转换方法

总结了一些字母大小写转换的方法。
  • JIEJINQUANIL
  • JIEJINQUANIL
  • 2016年04月16日 12:27
  • 34139

C语言strlwr()函数:将字符串转换为小写

头文件:#include strlwr()用于将字符串中的字符转换为小写,其原型为:     char *strlwr(char *str); 【参数说明】str为要转换的字符串。 ...
  • wuwenhuahua
  • wuwenhuahua
  • 2015年03月12日 09:00
  • 5982

C++: string的大小写转换

将一个string转换成大写或者小写,是项目中经常需要做的事情,但string类里并没有提供这个方法。自己写个函数来实现,说起来挺简单,但做起来总让人觉得不方便。打个比方:早上起来想吃个汉堡,冰箱里有...
  • zhongyhc
  • zhongyhc
  • 2014年12月02日 23:23
  • 10328
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C/C++库函数(tolower/toupper)实现字母的大小写转换
举报原因:
原因补充:

(最多只允许输入30个字)