01/10/2018, 12:26
Tách tên trong C++
#include <iostream>
#include <string>
using namespace std;
void _tachten1nguoi ( const string hoten , string &ten);
int main ()
{
string hoten = "Le Van Thanh";
string ten;
_tachten1nguoi(hoten,ten);
cout << ten;
cout <<ten.length();
return 0;
}
void _tachten1nguoi ( const string hoten, string & ten )
{
int n = hoten.length();
for ( int i = n-1 ; i>= 0; i--)
{
if (hoten[i] == ' ')
{
for ( int j = i+1; j< n; j++)
{
ten[j-1-i]= hoten[j];
}
break;
}
}
}
Mình viết với mục đích để tách tên ra khỏi họ tên, nhưng thất bại, kiểm tra thì độ dài string ten = 0. Mong mọi người giúp đỡ.
Bài liên quan
Bạn debug trong cái if đi là b thấy vấn đề á
ở cuối hàm

Sau khi thoát khỏi hàm thì nó là

Bạn giải thích cho mình với. mình cũng mới học cái này thôi
Không thể gán khơi khơi vậy được.
String như 1 cái mảng, bạn không thể gọi ra phần tử thứ i không tồn tại trong một chuỗi rỗng được. Mảng a bạn chưa cấp phát khởi tạo gì mà gọi a[i] sao được. Kiểu dữ liệu String á, bạn muốn truy cập hay cập nhật phần tử ten[i] thì bản thân biến ten phải là 1 chuỗi cụ thể rồi, ví dụ “nguyen van a”. Mình nghĩ thế.
Mảng kí tự trong C
Bài giảng của Anh @ltd, b nên xem cái này này