首页 > 这一段c++是什么意思?

这一段c++是什么意思?

CString GetCurrentDir(void)
{
    TCHAR sDrive[_MAX_DRIVE];
    TCHAR sDir[_MAX_DIR];
    TCHAR sFilename[_MAX_FNAME];
    TCHAR Filename[_MAX_FNAME];
    TCHAR sExt[_MAX_EXT];
    
    GetModuleFileName(AfxGetInstanceHandle(),Filename,_MAX_PATH);
    _tsplitpath(Filename,sDrive,sDir,sFilename,sExt);
    CString HomeDir(CString(sDrive)+CString(sDir));    
    if (HomeDir.GetAt(HomeDir.GetLength()-1)!=_T('\\'))
        HomeDir+=_T('\\');
    return HomeDir;
}
这个方法是什么意思

    char path[256];
    sprintf(path, "%splaylist1.txt", GetCurrentDir());
//又是什么意思
    result = AddWindowEx(iCom, iAddress, iSchedule, 0, 0, 128, 32, path);
    if (!result)
        AfxMessageBox("设置播放数据playlist1.txt失败");

整体看来风格不大好,特别这个写法有点怕怕:

sprintf(path, "%splaylist1.txt", GetCurrentDir()); 

不是很明白吗?getcurrentdirectory


CString GetCurrentDir(void);

返回一个类型为CString的变量(估计是个字符串),表示当前目录的路径。

sprintf(path, "%splaylist1.txt", GetCurrentDir());

GetCurrentDir()返回的字符串(即当前目录的路径)和playlist1.txt拼接在一起,然后把拼接好的字符串赋值给path变量。


sprintf是格式化字符串函数。

sprintf(path, "%splaylist1.txt", GetCurrentDir());
【热门文章】
【热门文章】