把一個字串所有出現的大寫字母都替換成小寫字母,同時把小寫字母替換成大寫字母。
原始碼如下:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char* ChangeEngChar(char* input, int iLen)
{
int i;
char *szSrc = input;
for(i = 0; i < iLen; i++)
{
if((szSrc[i] >= 'a' && szSrc[i] <= 'z') || (szSrc[i] >= 'A' && szSrc[i] <= 'Z'))
{
if(szSrc[i] >= 'A' && szSrc[i] <= 'Z')//大寫
{
szSrc[i] = szSrc[i]+32;
}
else//小寫
{
szSrc[i] = szSrc[i]-32;
}
}
}
return input;
}
int main(int argc, char* argv[])
{
char str[] = "a.gAg.Vg.wgwh,,
printf("原來字串為:%s\r\n", str);
printf("修改後字串為:%s\r\n", ChangeEngChar(str, sizeof(str)));
printf("\r\n");
return 0;
}
結果如下:
原來字串為:a.gAg.Vg.wgwh,,[email protected]+6*1g87&37pge
修改後字串為:A.GaG.vG.WGWH,,[email protected]+6*1G87&37PGE