Chủ đề: Pointer
-
22-06-2014, 08:03 AM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Mình hiểu rồi. Cám ơn hai bạn nhiều nhé [IMG]images/smilies/biggrin.png[/IMG]
View more random threads:
- hàm sort của em không chạy và khi em nhập '0' vào ISBN để break chương trình thì nó cũng không chạy.
- Socket trên Objective c
- Hỏi về so sánh các chuỗi con có trọng số
- mấy anh coi dùm em bài tập này ạ, cảm ơn mấy anh nhiều
- [help] số nguyên tố
- Phong cách kiến trúc xanh là phong cách được ưu chuộng hiện nay
- Ae có code ngắn hơn về nhập ma trận xoắn óc ko ????
- A/c giỏi c++ giúp giùm e mấy bài này với.
- Bài tập: Tạo 1 Bootloader cho kl46
- Hỏi về Modifier trong lập trình C
-
22-06-2014, 03:35 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Pointer
Mình mới gặp đoạn code này.
Mã:#include<stdio.h> #include<conio.h> main() { int *q,a[10]={5,4,6,4,3,9,7,8,1,0}; char *p; p=(char*)a; p++; q=(int*)p; printf(" %d",*q); }
-
22-06-2014, 04:07 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Cái này là misaligned memory access rồi.
Nếu là int 16bit:
- Big-endian: Kết quả là 4
- Little-endian: Kết quả là 4*2^8=1024.
-
22-06-2014, 05:59 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Trường hợp của bạn là Little endian (http://en.wikipedia.org/wiki/File:Big-little_endian.png) và int 16 bit
Xét a[0] và a[1]:
Mã:a[0] = 5: (first byte) 0000 0101 (second byte) 0000 0000 a[1] = 4: (first byte) 0000 0100 (second byte) 0000 0000 p = a: (first byte) 0000 0101 p++ : (first byte) 0000 0000 q = p: (first byte) 0000 0000 (second byte) 0000 0100 ( lấy từ first byte của a[1])
Vậy q = 1024.
Trứng rung điều khiển từ xa Vibrator Spark Of Love Sản phẩm trứng rung bluetooth có điều khiển từ xa này được thiết kế với tông màu Rose Gold viền kim khí trải qua. kích tấc 7,4cm x 3,5cm giúp trứng...
TOP 3 trùy rung điều khiển từ xa...