2014-01-17 25 views
0

我嘗試打印一個字符元素,但只打印出特定的字符。 例如如何去掉特定字符的左邊並打印剩下的字段

char* str[265]; 
str[0] = "hello"; 
str[1] = "world"; 
str[2] = "go-to"; 
str[3] = "//foo.com/moreInfo/contact"; 

但是在str [3]我希望它等於聯繫;這可以做到嗎? 這樣保存最後一個「/」後的單詞。

預先感謝您

+1

是否有任何方法或方法的組合可以使用'std :: string'? –

+0

通常我會看C語言庫來查找我可以使用的方法。對於C風格的字符串,這看起來很有前景:http://en.cppreference.com/w/c/string/byte/strrchr –

+0

該函數看起來很有用:http://en.cppreference.com/w/c/string/byte/strstr –

回答

2

如果你一定要在你的C++代碼中使用C字符串,即使C++ std::string提供了更多的靈活性,你可以使用strrchr來定位str[3]最後一個斜線,這樣的:

char *tmp = strrchr(str[3], '/'); 
if (tmp) { 
    str[3] = tmp+1; 
} 

您需要#include <cstring>才能編譯。

Demo on ideone.

+0

這正是我所需要的。謝謝 – Doctor06