歡迎大家自行新增考古題~ 有問題的地方也可以用 "建議修訂" 標註
0 | 1 |
---|---|
2 | 4 |
3 | 5 |
6 | 7 |
8 | 10 |
9 | 11 |
If the address of array is 200, try to answer the following questions:
(1) &array = 200
(2) &array + 1 = 240 //跨了一整個array 所以位址+10 * sizeof(int)
(3) ptr = 240 //依照宣告定義 所以同上
(4) *ptr = 未定義 //array的下一個位址的值是多少不知道
(5) ptr - 1 = 236
(6) *(ptr - 1) = 100 //array下一個位址往前一個位址後取值 即array的最後一個值
(7) *array = 10 //array取指標 隱性轉型 指向array第一個位址的值
(8) *array + 1 = 11
(9) *(array + 1) = 20
(10) ptr2 = 200 //指向array第一個位址
(11) *ptr2 = 10 //指向array第一個位址的值
(12) ptr2[1] = 20
(13) *(ptr2 + 1) =20
https://stackoverflow.com/questions/19133962/how-to-write-a-data-in-particular-address-in-c
**ANS: 2,3,3**
a. write a function to get bit18 value of an unsigned integer data and return 0 or 1.
b. write a function to set bit18 value of an unsigned integer data.
c. write a function to clear bit18 value of an unsigned integer data.
d. write a function to check the unsigned integer value is power of 2
ANS : 101, 2, 103, 4, 5, 6
<以下兩題見Leetcode>
補充:leetcode的func argument有string size,但先前面試經驗,需用指針實作strlen