字符串處理函數整理
阿新 • • 發佈:2017-10-08
pri tro 路徑 name family bsp left ack 內容
1. strdup 函數
函數名: strdup
功 能: 將串拷貝到新建的位置處
用 法: char *strdup( char *str );
例 子:
std::string fname = "my_map.yaml";
char* fname_copy = strdup(fname.c_str());
2. dirname 函數
函數名: dirname
功 能: 截取給定路徑的目錄部分 (如/usr/bin,得到的內容就是/usr;如/sdcard/miui_recovery/backup,得到的內容是/sdcard/miui_recovery )
用 法: std::string dirname( char* dir )
例 子:
char* fname_copy = strdup(fname.c_str());
mapfname = std::string(dirname(fname_copy)) + ‘/‘ + mapfname;
3. basename 函數
函數名: basename
功 能: 得到特定的路徑中的最後一個‘/‘,後面的內容 (如/usr/bin,得到的內容就是bin; 如果/sdcard/miui_recovery/backup 得到的內容就是backup)
用 法: std::string basename( char* str )
例 子:
char *test_a = "/usr/bin";
printf("Test 1: ‘/usr/bin‘ -> %s \n", basename(test_a));
字符串處理函數整理