zoukankan      html  css  js  c++  java
  • 字符串

    #include "stdafx.h"
    #include <windows.h>
    #include <iostream>
    
    #include <shlwapi.h>
    #pragma comment(lib,"Shlwapi.lib")
    #include <atlstr.h>
    //#include <cstring>
    
    using namespace std;
    
    VOID Sub_1();//双字查找最后一个出现 wcsrchr
    
    BOOL Sub_2();//单字查找第一个出现 StrStrIW
    BOOL Sub_2_1();//单字查找第一个出现 StrStrIA
    VOID Sub_3();//双字查找从最后一个查找 wcscat
    
    VOID Sub_3_1();//wcsstr //wcsstr(BufferData, L".")    wcsstr
    
    VOID Sub_4();//CString 双字查找从最后查找 CString  ReverseFind
    
    VOID Sub_5();//双字查找从最后一个开始找wcsrchr
    
    VOID Sub_6();//单字查找从最后一个开始找  strrchr  strrchr(BufferData, '\')
    
    VOID Sub_7();//单字查找从第一个开始找 strstr  strstr(BufferData, ".")
    
    VOID Sub_8();//单字查找从第一个开始找 strchr  strchr(BufferData,'.')
    
    #pragma warning(disable:4996) 
    
    int main()
    {
        //Sub_1(); //双字查找最后一个出现
        //Sub_2();
        Sub_2_1();//单字查找第一个出现 StrStrIA
        //Sub_3(); //双字查找第一个出现
        //Sub_3_1();
        //Sub_4();
        //Sub_6();
        //Sub_7();
        //Sub_8();
        return 0;
    }
    VOID Sub_1()//双字查找最后一个出现  wcsrchr
    {
        WCHAR  Sour[1024] = L"c:\1\1\1.txt";
        WCHAR* FindPoint = NULL;
        printf("Sour:%S
    ", Sour);
        //WCHAR  wzDest[1024] = L"D:";
    
        FindPoint = wcsrchr(Sour, '\');//wcsrchr是一种函数,功能是从一个字符串中寻找某个字符最后出现的位置。
    
        if (FindPoint != NULL)
        {
            *FindPoint = '';
    
        //    wcscpy(wzDest, wzSour);    //双字拷贝
            wcscat(Sour, L"\2.dll");//双字连接
            *FindPoint = '\';
    
        }
        printf("Dest:%S
    ", Sour);
        //printf("Sour:%S
    ", wzSour);
    //    printf("Dest:%S
    ", wzDest);
    }
    
    BOOL Sub_2()//双字查找第一个出现 StrStrIW
    {
        WCHAR  wzSour[1024] = L"C:\windows\system32\notepad.exe";
        WCHAR* FindPoint = NULL;
        WCHAR  v1[1024] = L"Notepad.exe";
        FindPoint = StrStrIW(wzSour, v1);
        if (FindPoint != NULL)
        {
            return TRUE;
        }
        return FALSE;
    }
    BOOL Sub_2_1()//单字查找第一个出现 StrStrIA
    {
        CHAR  szSour[1024] = "C:\windows\system32\notepad.exe";
        CHAR* FindPoint = NULL;
        CHAR  v1[1024] = "Notepad.exe";
        FindPoint = StrStrIA(szSour, v1);
        if (FindPoint != NULL)
        {
            return TRUE;
        }
        return FALSE;
        
    }
    
    VOID Sub_3() //双字查找从最后一个查找 wcscat
    {
        WCHAR  Sour[1024] = L"C:\windows\system32\notepad.exe";
        WCHAR* FindPoint = NULL;
        WCHAR  Dest[1024] = L"D:";
        FindPoint = wcsstr(Sour, L"\");//wcsrchr是一种函数,即Scan a string for the last occurrence of a character,功能是从一个字符串中寻找某个字符最后出现的位置。
    
        if (FindPoint != NULL)
        {
            wcscat_s(Dest, FindPoint);
    
            /*功能:把strSource所指字符串添加到strDestination结尾处,覆盖                strDestination结尾处的''并添加''。
            说明:strSource和strDestination所指内存区域不可以重叠且strDestination        必须有足够的空间来容纳strSource的字符串。
    
            备注 : 因为wcscat在strDestination追加strSource前不进行检查,这是一个            缓冲区溢出的潜在原因。故使用时应注意。推荐使用wcscat_s替代.*/
        }
        printf("Sour:%S
    ", Sour);
        printf("Dest:%S
    ", Dest);
    
    
    
    }
    VOID Sub_3_1()    //wcsstr(BufferData, L".")    wcsstr
    {
        WCHAR BufferData[MAX_PATH] = L"C:\1.txt";
        WCHAR* FindPoint = NULL;
    
        FindPoint = wcsstr(BufferData, L".");//单字查找
        if (FindPoint != NULL)
        {
            *FindPoint = '';
            wcscat(FindPoint, L".dll");//双字连接
        }
        printf("%S", BufferData);
        
    }
    VOID Sub_4() //CString 双字查找从最后查找 CString  ReverseFind
    {
        WCHAR v1[MAX_PATH] = L"C:\1\1\1.txt";
        WCHAR* FindPoint = NULL;
        CString v2 = v1;
    
        int iPos = v2.ReverseFind('\');//5
    
        CString v3 = v2.Left(iPos + 1);
        v3 += L"1.dll";
    
        printf("%S", v3.GetBuffer());
    }
    VOID Sub_5()//双字查找从最后一个开始找wcsrchr
    {
        WCHAR BufferData[1024] = L"c:\UMS\UMS\UMS.txt";
        WCHAR* v1 = NULL;
        printf("%S
    ", BufferData);
        v1 = wcsrchr(BufferData, '\');//wcsrchr是一种函数,功能是从一个字符串中寻找某个字符最后出现的位置。
    
        if (v1 != NULL)
        {
            *v1 = '';
            wcscat(BufferData, L"\HelloWorld.dll");//双字连接
        }
        printf("%S
    ", BufferData);
        printf("Input AnyKey To Exit
    ");
        getchar();
    }
    VOID Sub_6()//单字查找从最后一个开始找  strrchr  strrchr(BufferData, '\')
    {
        char BufferData[1024] = "c:\Shine\Shine\Shine.txt";
        char* v1 = NULL;
        printf("%s
    ", BufferData);
        v1 = strrchr(BufferData, '\');//strrchr是一种函数,功能是从一个字符串中寻找某个字符最后出现的位置。
    
        if (v1 != NULL)
        {
            *v1 = '';
            strcat_s(BufferData, "\HelloWorld.dll");//单字连接
        }
        printf("%s
    ", BufferData);
        printf("Input AnyKey To Exit
    ");
        getchar();
    }
    VOID Sub_7()//单字查找从第一个开始找 strstr  strstr(BufferData, ".")
    {
        /*
        strstr 编辑
            strstr(str1, str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。*/
        char BufferData[1024] = "c:\Shine\Shine\Shine.txt";
        char* v1 = NULL;
        printf("%s
    ", BufferData);
        v1 = strstr(BufferData, ".");//strstr是一种函数,功能是从一个字符串中寻找某个字符最后出现的位置。
    
        if (v1 != NULL)
        {
            *v1 = '';
            strcat_s(BufferData, "\HelloWorld.dll");//单字连接
        }
        printf("%s
    ", BufferData);
        printf("Input AnyKey To Next
    ");
        getchar();
    }
    VOID Sub_8()//单字查找从第一个开始找 strchr  strchr(BufferData,'.')
    {
        char BufferData[1024] = "c:\UMS\UMS\UMS.txt";
        char* v1 = NULL;
        printf("%s
    ", BufferData);
        v1 = strchr(BufferData,'.');//strchr是一种函数,功能是从一个字符串中寻找某个字符最后出现的位置。strchr函数原型:extern char *strchr(const char *s,char c);查找字符串s中首次出现字符c的位置。
    
        if (v1 != NULL)
        {
            *v1 = '';
            strcat_s(BufferData, "\HelloWorld.dll");//单字连接
        }
        printf("%s
    ", BufferData);
        printf("Input AnyKey To Exit
    ");
        getchar();
    }

    整理了一些WCHAR、CHAR的从头、尾查找第一次出现函数。

  • 相关阅读:
    SpringBoot创建定时任务
    SpringBoot 多环境配置
    SpringBoot中使用log4j日志
    SpringBoot项目结构介绍
    SpringBoot快速入门
    Zookeeper Zkclient客户端
    Zookeeper java api
    学习微信小程序及知识占及v-if与v-show差别

    1像素
  • 原文地址:https://www.cnblogs.com/1228073191Blog/p/7392028.html
Copyright © 2011-2022 走看看