C語言之字串與指標

2021-08-05 19:34:19 字數 1059 閱讀 6271

1、字串的儲存與訪問

字串的訪問

char str[n];

第i個字元:*(str+i)

思考???

以下寫法是否正確?

char s1[n];

s1=「welcome」;

s1=「welcome」;

錯誤!必須逐一賦值或使用函式,且陣列長度要足夠大。

可以使用字元指標解決:

char *s;

s=「welcome」;

或:char *s=「welcome」;

通過++運算指向下乙個字元。

練習:

1、若有如下定義和語句,請寫出通過指標p取出

字元『g』的表示式:*(p+6)

char s[13]="abcdefghijk", *p=s;

2、下面程式的輸出結果為:

void main( )

;for(i=0;i<4;i++)

puts(name[i]);

練習:可以加下群466572167(群內有各種專案學習資料)

1、定義a為共有5個元素的一維整型陣列,同時定義p為指向a陣列位址的指標變數的語句為

int a[5],*p=a;

2、設int x[ ]=, y, *p=&x[1]; ,則執行語句 y=(*--p)++後y的值為 --p為&x[0] 內容為:1 結果為1

?此時x[0]值變為多少?2

3、下面程式的輸出結果為:

int *ptr;

int arr=;

ptr=arr;

*(ptr+2)+=2;

printf("%d,%d",*ptr,*(ptr+2));

6,10

4、若輸入abcdef回車,寫出程式的執行結果:

#include "string.h"

func(char str)

C語言之字串

字元就是符號 圖案,在計算機中以整數形式儲存,當需要顯示時會根據ascii表中的對應關係,顯示相應的符號或圖案。字元型別 char 的資料 如字元a,a,0,等 在記憶體中以對應的ascii碼存放,不同字元所對應的ascii碼見下表。計算機用乙個位元組 8個二進位制位 儲存乙個字元,例如,字元a的a...

小小C語言之陣列與字串

一維陣列 一 一維陣列的定義格式為 型別說明符 陣列名 常量表示式 註解 定義陣列時需要註明陣列元素的個數,即陣列長度,定義時可不賦初值。c語言不允許對陣列大小做動態定義,即陣列的大小不依賴於程式執行過程中變數的值。二 陣列賦值問題 1 在定義陣列時,可以給陣列賦以全部初值 2 也可以只給一部分元素...

C語言之陣列 字串

陣列 一 陣列的定義和賦值 int ages 5 每個元素佔4個位元組,整個陣列的大小為4 元素個數5 int ages 定義陣列可以不宣告長度,後邊大括號裡的元素個數決定陣列的長度 int ages a a 65,所以這個陣列的長度為65 ages 0 29 為某乙個元素賦值或替換 二 陣列的遍歷...