Write the execution result of C language indicator array

 寫出C語言指標陣列的執行結果


、C 語言宣告一陣列如 int *x[5]={“BENZ”, “AUDI”, “LEXUS”, “APPLE”, “BMW”};試

說明下列指標運算的結果為何?(每小題 3 分,共 9 分)

*(x+1)

*(x+1)+1

**(x+1)


在這個情況下,`int *x[5]` 是一個指標陣列,每個元素都是一個指向 `int` 的指標。但你的初始化陣列中的元素是字串字面值,而不是整數。所以你的初始化陣列和宣告之間有類型不匹配的問題。如果你想要建立一個指向字串的指標陣列,你應該這樣宣告:


```c

const char *x[5] = {"BENZ", "AUDI", "LEXUS", "APPLE", "BMW"};

```


然後你可以使用這個宣告來回答下列指標運算的問題:


1. `*(x+1)`:這表示你訪問陣列 `x` 的第二個元素,它指向字串 "AUDI"。

2. `*(x+1)+1`:這表示你訪問字串 "AUDI" 的第二個字符,也就是字母 'U' 的 ASCII 碼值。

3. `**(x+1)`:這表示你訪問陣列 `x` 的第二個元素,然後再訪問這個元素指向的字串的第一個字符 'A'。


根據以上的宣告和指標運算,你可以得到以下結果:

1. 指向字串 "AUDI"

2. 字母 'U' 的 ASCII 碼值

3. 字母 'A' 的 ASCII 碼值



Comments

Popular posts from this blog

How to write data into a excel file using vbscript

Format date as yyyy-mm-dd using vbscript