-
28-09-2014, 09:31 AM #1
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Nhờ giải thích kết quả của đoạn code
mình có đoạn code sau :
Mã:#include <stdio.h> #include <string.h> char* GetString1() { char *st = "String"; return st; } char* GetString2() { char st[] = "String"; return st; } char* GetString3() { char *st = new char[6]; strcpy(st, "String"); return st; } void main(){ printf("Say: %s ", GetString1()); printf("Say: %s ", GetString2()); printf("Say: %s ", GetString3()); }
View more random threads:
- Thắc mắc về bài tập C
- Xóa phần tử trong mảng
- Từ điển về cây nhị phân tìm kiếm
- Cho phép người dùng nhập lại khi nhập sai
- hướng dẫn cach làm
- Bài toán 8 quân hậu
- hàm sắp xếp chén trực tiếp(insertion sort) có ai giúp mình giai thích được không?
- operator <<
- Sắp xếp các số duơng tăng dần và số âm giàm dần bằng pp Buble sort
- In ra tất cả các số hoàn hảo <1000
-
28-09-2014, 09:37 AM #2
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
int main() chứ ko phải void().
- Lệnh 1 in ra "String" do st thuộc vùng const.
- Lệnh 2 in blabla do st[] bị tiêu hủy.
- Lệnh 3 in ra "String" do st ko bị hủy.
-
28-09-2014, 09:41 AM #3
Junior Member
- Ngày tham gia
- Sep 2015
- Đang ở
- Hà Nội
- Bài viết
- 0
Gửi bởi prog10
- - - Nội dung đã được cập nhật ngày 28-09-2014 lúc 02:41 PM - - -
cái này có phải do phương thức 1 và 3 cấp phát động, phương thức 2 cấp phát tĩnh sẽ tự động hủy sau khi ra khỏi scop {}
-
28-09-2014, 11:02 AM #4
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi vudung75
- Lệnh 1 là do chuỗi "String" được ghi vào binary, tức là nó có sẵn từ đầu, ko thay đổi đc.
- Lệnh 3 là do cấp phát động primitive nên ko bị hủy và vẫn còn đó.
-
28-09-2014, 12:37 PM #5
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi prog10
[/b] Tại Lương Sơn TV bạn sở hữu thể xem truyền hình trực tiếp bóng đá hôm nay các giải đấu to trong và ngoài nước. Lương Sơn TV ko chỉ đem lại những trận chiến mãn nhãn sở hữu chất lượng hình ảnh...
Các giải đấu không thể bỏ lỡ tại...