Thao tác với chuỗi trong c++

Các khóa học qua video:
Lập trình C Java C# SQL Server PHP HTML5-CSS3-JavaScript

Khóa học tham khảo:

1. Lập trình C/C++ cho các bạn từ 12-17 tuổi

2. Lập trình C/C++ cho các bạn từ 18 tuổi

Ngôn ngữ lập trình C hỗ trợ cho chúng ta khá nhiều hàm để xử lý hay thao tác với chuỗi. Các hàm này bạn có thể tìm thấy trong thư viện  [tương ứng với tập tin string.h trong thư mục INCLUDE đối với phiên bản BorlandC V3.1].

Xin được nhắc lại, để khai báo một chuỗi ta khai báo mảng ký tự một chiều, ví dụ câu lệnh char str[20]; sẽ tạo một chuỗi có tên str với kích thước tối đa là 20 ký tự. Còn để khai báo một mảng chuỗi thì ta khai báo một mảng ký tự hai chiều, chẳng hạn như câu lệnh char arrstr[10][25]; sẽ tạo một mảng gồm 10 chuỗi và mỗi chuỗi có tối đa 25 ký tự.

Một chuỗi "abc" chẳng hạn, thực ra sẽ có 4 ký tự 'a', 'b', 'c', và ký tự kết thúc chuỗi '\0'. Ký tự '\0' ứng với NULL.

Các ký tự đặc biệt thể hiện trong chuỗi:

\\ Gạch chéo ngược [xổ trái]
\" Nháy đôi [nháy kép]
\' Nháy đơn
\n Newline [line feed] - Xuống dòng
\r Carriage return
\b Backspace [Xóa lùi]
\t Horizontal tab [Tab ngang]
\f Form feed
\a Alert [bell] [Phát tiếng kêu thông báo]
\v Vertical tab [Tab dọc]
\? Question mark [dùng trong đồ họa 3 chiều]
\nnn Character with octal value nnn
\xhh Character with hexadecimal value hh

Ba loại hàm có sẵn trong thư viện string.h:

  • các hàm mem thao tác với chuỗi ký tự tùy ý mà không liên quan đến ký tự rỗng;
  • các hàm str thao tác với các chuỗi ký tự kết thúc bằng null;
  • các hàm strn thao tác với chuỗi các ký tự không rỗng.

Dưới đây ta sẽ tìm hiểu các hàm xử lý chuỗi phổ biến trong ngôn ngữ C.

1. strlen[]

Hàm strlen[] [string length] dùng để lấy kích thước chuỗi [là số lượng ký tự của chuỗi]. Kích thước của chuỗi thường được dùng trong các vòng lặp lấy từng ký tự của chuỗi. Cú pháp của hàm là:

strlen[str];

, trong đó, str có thể là một biến chuỗi hoặc một hằng chuỗi thì cũng đều được chấp nhận.

Chương trình dưới đây hiển thị nội dung của một chuỗi trong đó giữa các ký tự được đặt thêm một ký tự '*':

#include
#include
#include

main[] {
  char str[10] = "V1Study";
  int i;
  /* truy xuất và hiển thị từng ký tự của chuỗi */
  for[i = 0; i

Bài Viết Liên Quan

Chủ Đề