zoukankan      html  css  js  c++  java
  • [转]C++字符串操作函数_tcschr、_tcsrchr

    原文出处:https://blog.csdn.net/eickandy/article/details/50083169

    C++标准库函数提供了字符和字符串的操作函数,并提供了其UNICODE版本,本文介绍_tcschr和_tcsrchr,名字很相似,就差一个字母r

    1、_tcschr代替strchr或者wcschr
    函数功能:查找一个字符串中首次出现的指定字符。

    函数原型
    char *strchr(const char* _Str,int _Val)
    char *strchr(char* _Str,int _Ch)
    头文件:#include <string.h>
    功能: 查找字符串s中首次出现字符c的位置
    说明: 返回首次出现c的位置的指针,返回的地址是被查找字符串指针开始的第一个与Val相同字符的指针,如果s中不存在c则返回NULL。
    返回值:成功则返回要查找字符第一次出现的位置,失败返回NULL

    函数原型:wchar_t *wcschr(const wchar_t *ws,wchar_t wc)
    头文件:#include<wcschr.h>
    说明:在宽字符串ws中查找宽字符wc,然后返回第一个匹配wc的位置即指针,如果没有找到就返回空指针NULL.[1]
    返回值:成功则返回要查找字符第一次出现的位置,失败返回NULL

    _tcschr  查找字符串中某个字符第一次出现的位置
    两个参数
    第一个参数:字符串
    第二个参数:查找的字符
    返回值:指向第一次在字符串中出现的该字符的指针,如果要查找的字符再串中没有出现,则返回NULL。

    (:_tcschr支持ANSI和UNICODE,ANSI使用strchr,UNICODE使用wcschr。)


    2、_tcsrchr代替strrchr或者wcsrchr

    函数功能:查找一个字符串中最后一次出现的指定字符。

    函数原型
    char *strrchr( const char *string, int c);
    char *wcsrchr( const wchar_t *string, int c );
    参数说明
    第一个参数:字符串
    第二个参数:需要查找的字符
    功能:查找一个字符串中最后出现的指定字符。
    返回值:找出字符串中最后一个出现查找字符的地址,然后将该字符出现的地址返回。

    (注:_tcsrchr支持ANSI和UNICODE,ANSI使用strrchr,UNICODE使用wcsrchr。)

    3、应用(获取模块路径)

     1 inline void getModulePath(CString &path)
     2 {
     3   char bufPath[1024] = {0};
     4 #if defined(_WIN64)
     5   ::getModuleFileNameA(nullptr, bufPath, 1024);
     6   (strrchr(bufPath, '\'))[1] = 0;    
     7 #else
     8   getcwd(bufPath, 1024);
     9 #endif
    10   path = bufPath;
    11 }

    以上代码获取去掉文件名后的目录路径,如果要获取盘符根路径,使用strchr即可(这两个函数就差一个字母r,一定要看清楚,容易混淆)。

  • 相关阅读:
    各语言最原始数据库访问组件封装DBHelper
    Andorid 之日历控件,可左右滑动,包含公历,农历,节假日等
    Andorid 之日历控件,可左右滑动,包含公历,农历,节假日等
    Andorid 之日历控件,可左右滑动,包含公历,农历,节假日等
    Andorid 之日历控件,可左右滑动,包含公历,农历,节假日等
    如何学习Python?
    如何学习Python?
    如何学习Python?
    如何学习Python?
    写颗搜索二叉树动动脑,开启今年的旅程,新年快乐
  • 原文地址:https://www.cnblogs.com/MakeView660/p/11942638.html
Copyright © 2011-2022 走看看