delphi 英文字母大小写转换

来源:百度知道 编辑:UC知道 时间:2024/05/06 02:20:57
在编辑框中输入英文字母,然后按“转小写”按钮。编辑框中文本转为小写。按“转大写”按钮,则文本转大写。

要求:有一定长字符串(8个英文字母),
要求对其中任意字个数进行大小写转换生成新的字符串.
请问该如何实现.
原串:abcdefg

要求结果:
Abcdefg
AbcdefG
abcdefG
AbcdeFg
abcdeFg
AbcdeFG
abcdeFG
AbcdEfg
abcdEfg
....之类

.....
这样子

就是模拟二进制数据的进位关系
总共是2^8种可能(包含原始字符串)
做一个256此的循环,根据循环控制变量的位标志来改变大小写状态就可以了

char * pStr;
// pStr = "abcdefgh" // 假定初始字符串全部是小写的

char * pTemp = new char[9];
memset(pTemp, 0, 9);
for ( int i=0; i<256; i++ )
{
strcpy(pTemp, pStr, 8);
for ( int j=0; j<8; j++)
{
int flag = 1<<j;
if ( i & flag )
pTemp[j] -= 0x20;