Perl - Chương 02: Dữ liệu vô hướng

Hôm nay chúng ta sẽ tìm hiểu về dữ liệu vô hướng trong ngôn ngữ bậc cao Perl. Ngoài ra, chúng ta còn sẽ được tìm hiểu thêm về các kiểu quy định dữ liệu như kiểu số, xâu, các toán tử và các biến vô hướng.





Dữ liệu vô hướng là gì?
Vô hướng là một loại dữ liệu đơn giản hay có trong các ngôn ngữ bậc cao như Python, Ruby,... và các dữ liệu đó gần như có thể chuyển đổi kiểu dữ liệu cho nhanh. Một giá trị vô hướng có thể được tác động thông qua toán tử, nó còn có thể được chứa trong một biến vô hướng khác. Tất cả các giá trị vô hướng điều có cùng một kiểu dạng thức bên trong. Trong ngôn ngữ Perl, hằng kí hiệu động là một cách để biểu diễn các giá trị bên trong chương trình - giống như một hằng mà chúng ta hay lập trình vậy. Perl chấp nhận tất cả các tập hợp đầy đủ kí hiệu bằng dấu phẩy động có sẵn cho những người hay lập trình C. Cũng tương tự như vậy, hằng kí hiệu nguyên cũng biểu diễn dữ liệu trực tiếp. Các bạn nên lưu ý, chúng ta không nên đặt số 0 ngay đầu dữ liệu, bởi vì Perl đặc biệt hỗ trợ cho kiểu dữ liệu hệ tám và hệ mười.


test.pl


run test.pl


Xâu
Xâu là các dẫy kí tự (như "Hello"). Mỗi kí tự đã là một giá trị 8-bit trong toàn bộ tập 256 kí tự (không có gì đặc biệt về kí tự NUL như trong C). Giống như số, xâu có biểu diễn hằng kí hiệu (cách thức bạn biểu diễn xâu trong chương trình Perl). Các xâu hằng kí hiệu có theo hai hương vị: xâu dấu nháy đơnxâu dấu nháy kép. Xâu dấu nháy đơn là một dãy các kí tự được bao trong dấu nháy đơn. Giống như vậy, xâu dấu nháy kép lại là dãy các kí tự, mặc dầu lần này được bao bởi dấu ngoặc kép. Trong xâu dấu nháy kép, khi bạn sử dụng "\n" thì nó sẽ hiểu là xuống dòng, còn xâu dấu nháy đơn thì không.


Xâu


run xau.pl


Toán tử
Một toán tử tạo ra một giá trị mới (kết quả) từ một hay nhiều giá trị khác (các toán hạng). Chẳng hạn, + là một toán tử vì nó nhận hai số (toán hạng, như 5 và 6), và tạo ra một giá trị mới (11, kết quả). Perl cung cấp toán tử số dưới dạng toán tử cộng, trừ, nhân, chia điển hình thông thường,... Bên cạnh đó, Perl cung cấp toán tử luỹ thừa kiểu FORTRAN, mà nhiều người đã từng mong mỏi cho Pascal và C. Với toán tử xâu Các giá trị xâu có thể được ghép với toán tử chấm (.). (Quả thế, đó là dấu chấm đơn.) Điều này không làm thay đổi xâu, cũng như 2+3 không làm thay đổi 2 hay 3. Một tập các toán tử cho xâu khác là toán tử so sánh xâu. Các toán tử so sánh các giá trị ASCII của các kí tự của xâu theo cách thông thường. Phép toán thông dụng nhất trên biến vô hướng là phép gán, chính là cách đặt một giá trị cho một biến, ví dụ: $a = 17; # cho $a giá trị 17. Ngoài ra, Perl còn hỗ trợ toán tử hai ngôi, toán tử tăng và giảm, chop(),...


STDIN
Chúng ta tự hỏi xem Perl làm cách nào để lấy giá trị và thực hiện trong chương trình Perl. Mỗi lần bạn dùng STDIN ở chỗ đang trông đợi một giá trị vô hướng, thì Perl sẽ đọc toàn bộ dòng văn bản tiếp từ lối vào chuẩn (cho tới dấu dòng mới đầu tiên), và dùng xâu đó như giá trị cho STDIN. chop($a = <stdin>) ; #câu lệnh này đọc văn bản từ biến "a" và toán tử chop() sẽ loại bỏ giá trị cuối cùng, ví dụ như là xuống hàng chẳng hạn.



Print
Và tất nhiên trong mọi ngôn ngữ lập trình bậc cao điều phải có hàm này để xuất kết qua ra màn hình. Trong ngôn ngữ Perl, bạn dùng print có ngoặc tròn hay không đều sẽ cho ra cùng một kết quả. Điều này sẽ giúp người lập trình có thể rút gọn thời gian "code" cho mình hơn.


Undef
Điều gì sẽ xảy ra nếu bạn dùng một biến vô hướng trước khi bạn cho nó một giá trị? Chẳng có gì nghiêm trọng cả, và chẳng có gì dứt khoát sẽ gây định mệnh cả. Các biến đã có giá trị undef trước khi chúng được gán lần đầu tiên. Giá trị này trông như số không khi được dùng như một số, hay xâu rỗng chiều dài không nếu được dùng như một xâu.



Tóm tắt
Chúng ta đã đi qua phần dữ liệu vô hướng và cách mà Perl định nghĩa dữ liệu ra vào trong lập trình. Ở bài viết sau, chúng ta sẽ đi vào phần Mảng và cách sử dụng chúng trong ngôn ngữ Perl. Cám ơn các bạn đã xem bài viết.
Next Post Previous Post
No Comment
Add Comment
comment url