PathRemoveBackslash
文字列の後ろにある「\」を取り除きます。
書式
LPTSTR PathRemoveBackslash(
LPTSTR lpszPath
);
【インクルードファイル】
shlwapi.h
【必要追加ライブラリ】
shlwapi.lib
戻り値
「\」を取り除いた場合は「\0」に置き換えたアドレスが戻ります。
取り除かなかった場合は引数文字列の最後の文字のアドレスが戻ります。
引数
lpszPath
「\」を取り除きたいパスを含む最大長MAX_PATHのNULL文字で終了する文字列へのポインタ。
解説
引数文字列の最後にある「\」を取り除きます。 文字列の最初にある「\」は取り除けません。
使用例
〈サンプルプログラム〉
#include <stdio.h>
#include <shlwapi.h>
#pragma comment(lib, "shlwapi.lib")
int main()
{
char buffer[ ] = "c:\\a\\b\\File\\";
char *lpStr1 = NULL;
size_t size = strnlen(buffer, MAX_PATH);
char *lpStr2 = &buffer[size-1];
printf("引数に設定した文字列 : %s\n", buffer);
lpStr1 = PathRemoveBackslash(buffer);
printf("変換後の文字列 : %s\n", buffer);
printf("引数の最後の文字のポインタ: %08x\n", lpStr2);
printf("戻り値 : %08x\n\n", lpStr1);
size = strnlen(buffer, MAX_PATH);
lpStr2 = &buffer[size-1];
printf("引数に設定した文字列 : %s\n", buffer);
lpStr1 = PathRemoveBackslash(buffer);
printf("変換後の文字列 : %s\n", buffer);
printf("引数の最後の文字のポインタ: %08x\n", lpStr2);
printf("戻り値 : %08x\n\n", lpStr1);
char buffer2[ ] = "\\a\\b\\File\\";
size = strnlen(buffer2, MAX_PATH);
lpStr2 = &buffer2[size-1];
printf("引数に設定した文字列 : %s\n", buffer2);
lpStr1 = PathRemoveBackslash(buffer2);
printf("変換後の文字列 : %s\n", buffer2);
printf("引数の最後の文字のポインタ: %08x\n", lpStr2);
printf("戻り値 : %08x\n\n", lpStr1);
return 0;
}
〈出力〉
引数に設定した文字列 : c:\a\b\File\ 変換後の文字列 : c:\a\b\File 引数の最後の文字のポインタ: 0012ff4f 戻り値 : 0012ff4f 引数に設定した文字列 : c:\a\b\File 変換後の文字列 : c:\a\b\File 引数の最後の文字のポインタ: 0012ff4e 戻り値 : 0012ff4e 引数に設定した文字列 : \a\b\File\ 変換後の文字列 : \a\b\File 引数の最後の文字のポインタ: 0012ff65 戻り値 : 0012ff65
対応情報
DLL Version:shlwapi.dll version 4.71 以上。 Windows NT/2000:Windows NT 4.0/2000 Internet Explorer 4.0以降 Windows 95/98:Windows 95/98 Internet Explorer 4.0以降