Chuỗi trong C++: while(chuoi[n] != 0) hay while(chuoi[n] != "\0")

Đây là đoạn code của e chuyển chữ thường thành chữ HOA,em ra kết quả đúng nhưng vẫnthắc mắc đoạn: while(chuoi[n] != 0), em nghĩ nó là while(chuoi[n] != “\0”). Bác nào giúp e với!

while(chuoi[n] != 0){
	n++;
}

for(int i = 0;i < n;i++){
	if(chuoi[i] >= 97 && chuoi[i] <= 142)
		chuoi[i] -= 32;
}
cout << chuoi << endl;

system("pause");
return 0;

}

  • sao không để cái if trong vòng while , khỏi phải có câu lệnh for
  • ‘\0’ có giá trị là 0 nó cũng là kiểu int nên ‘\0’ hay 0 đều ý nghĩa như nhau
2 Likes

Trong bảng mã ASCII ký tự có mã thập phân =0 là ký tự rỗng.

2 Likes

dùng strlen được mà nhỉ? :smile:

1 Like

đề bài ko cho dùng hàm bác ạ :smiley:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?