展示關於「指標題目集」分數截圖。
包括指標如何指向字串、字串相關函式及函式**原型的理解、字串相關函式用法(擴充套件課堂未介紹內容)
函式名函式格式
作用strcpy
strcpy(a,b)
把b字串內容賦給a字串 可以使用strncpy能自定義賦值的位數
strcmp
strcmp(a,b)
將a串與b串比較 1.a大值為1,b大值為-1,相等值為0. 2.可以使用strncmp自定義比較位數
strcat
strcat(a,b)
把b串從頭接到a串末尾 可以使用strncat自定義追加位數
strstr
strstr(a,b)
在a串中找到b串首次出現的位址 不會包含結束符
int *p=null;
p=(int *)malloc(2);
該函式的功能是在記憶體的動態儲存空間即堆中分配乙個長度為size的連續空間。函式的返回值是乙個指向所分配記憶體空間起始位址的指標,型別為 void*型。通常需要進行強轉
如果此函式未能成功地執行,如記憶體空間不足,則返回空指標 null。
calloc函式:
p=(int *)calloc(10,sizeof(int));
分配n個大小為s的堆區,與malloc分配的連續的空間不同
申請堆區空間後要記得在使用完之後釋放.
型別名 *陣列名[陣列長度];
型別名 **變數名;
如果乙個指標指向的是另外乙個指標,我們就稱它為二級指標,或者指向指標的指標。
定義格式、主要用法。
行指標:
型別名 (*變數名)[陣列長度]
列指標:
型別名 [陣列長度](*變數名)
char a[5][10];
char (*p)[10];
p=a;
char *q[10]=a;
定義整型變數i,j
定義二維陣列poem
定義字元型行指標p
定義整型變數x存放每行詩長度
p=poem
for i=0 to 4
輸入每行
end for
for p=poem to poem+4
x=*p的長度
輸出 (*p)+x-2
同學的**思路主要是再定義乙個陣列存放尾字,沒有用到指標,思路差距較大
int* c
c = (int*)malloc((m + n) * sizeof(int))
定義整型變數i,j,k
i是第乙個陣列a中的數的順序
j是第二個陣列b中的數的順序
展示同學**
同學的** 思路上與我有些像 但各種判斷要更加簡潔易懂,**量也比我少,各種分支判斷值得我學習
定義字元型指標變數p,q,a,e
定義整型變數 x,count,flag
x=strlen(p)
p = (char*)malloc(sizeof(char) * 600000)
for q=p to p+x-2
if *q=空格
for a=q+1 to q+count
輸出*a
end for
if count不為0
flag=1
for e=p to q
if *e不是空格
flag=0
break
end for
if flag為0
輸出空格
end if
count=0
end if
else
count++
if q等於p且*p不為空格
for a=q to q+count
輸出*a
C部落格作業05 指標
展示關於 指標題目集 分數截圖。每個知識點具體展開介紹。包括指標如何指向字串 字串相關函式及函式 原型的理解 字串相關函式用法 擴充套件課堂未介紹內容 具體格式是什麼,注意事項。為什麼要動態記憶體分配,堆區和棧區區別。動態記憶體分配相關函式及用法。舉例為多個字串做動態記憶體要如何分配。多個字串用二維...
C部落格作業05 指標
格式 datatype name value 定義格式 int p 定義,定義時必須帶 float p1 a char p2 c p1 b p2 d 賦值,在定義的同時賦值需要帶,單獨賦值時不能帶,因為p代表指標變數的值,即位址。p代表指標指標變數指向的變數的值。乙個函式在編譯時被分派乙個入口位址,...
C部落格作業05 指標
1.指標做迴圈變數做法 基本做法如下 int a 10 int p p a 指標指向a陣列的首位址 fgets a,10,stdin for p a p 0 p n p 2.字元指標如何表示字串 基本做法如下 char str abc char p for p str p 0 p n p 3.動態記...