2010-05-09 31 views

Trả lời

6

Từ một std::string, std::string::substr sẽ tạo ra một std::string mới từ hiện có cung cấp một chỉ số bắt đầu và chiều dài. Nó sẽ là tầm thường để xác định chiều dài cần thiết cho các chỉ số kết thúc (mặc dù nó sẽ phụ thuộc vào việc chỉ số kết thúc là bao gồm hoặc độc quyền).

Nếu bạn đang cố gắng tạo chuỗi con từ chuỗi kiểu C (một giá trị NUL-chấm dứt char mảng), thì bạn có thể sử dụng hàm tạo std::string(const char* s, size_t n). Ví dụ:

const char* s = "hello world!"; 
size_t start = 3; 
size_t end = 6; // Assume this is an exclusive bound. 

std::string substring(s + start, end - start); 
+1

Lưu ý, điều đó không kiểm tra 'kết thúc' đang nằm ở cuối chuỗi C. – Potatoswatter

7
std::string thesub = thestring.substr(start, length); 

hoặc

std::string thesub = thestring.substr(start, end-start+1); 

giả sử bạn muốn nhân vật thứ end để được bao gồm trong chuỗi.

Các vấn đề liên quan