C語言指針

c語言指針

因為參加了軟考初級程序員,所以來復習c語言。學習c語言指針。

大一學的時候,指針根本不太理解?,F(xiàn)在學的時候發(fā)現(xiàn)其實也很易懂。

1.指針是用來存放內(nèi)存地址的變量。

? int *p;? ? // *只是一個聲明符,說明他是指針 (剛開始的時候,我一直把這個搞混)

例子:? int *p,a;

?p=&a;

//p用來存放a的地址

2.指針和數(shù)組

? ? 1)指針和一維數(shù)組

int *p,a[20];

p=a;

或者是p=&a[0]

而不是p=&a;

因為數(shù)組名就是首地址.

?2)指針和二維數(shù)組

int a[4][5] = {2,3,4,5,6,7,8,9};

int *p[5];

p=a;

我在寫一個程序上遇到一個更迷惑的事,我不懂t[i]=s[i][0]是什么情況!

3.字符串和字符指針

char sa[]="hello";

如果要改變數(shù)組sa所表示的字符串,只能改變數(shù)組元素的內(nèi)容。

char *sp="hello";

如果要改變字符指針sp所代表的字符串,通常直接改變指針的值,讓它指向新的字符串。

4.常用的字符串處理函數(shù)

? 1)scanf 只能輸入不帶空格的字符串,遇到空格則會結束

? 2)gets遇到回車則會結束

? 3)printf和puts的區(qū)別在于后者輸出字符串之后會自動換行。

? 4)字符串復制函數(shù) char *strcpy(char *s1,char *s2)

該函數(shù)是把字符串s2復制到s1,直到遇到s2中的'\0'為止。

參數(shù)s1必須是字符型數(shù)組基地址,參數(shù)s2可以是字符數(shù)組名或者字符串常量

?5) 字符串連接函數(shù)strcat(s1,s2)

該函數(shù)將字符串s2接到字符串s1的后面。

參數(shù)s1必須是字符數(shù)組基地址,參數(shù)s2可以是字符數(shù)組名或字符串常量。

6)字符串比較函數(shù)strcmp(s1,s2)

該函數(shù)返回一個整數(shù),給出字符串s1和s2的比較結果

? ?1)若s1和s2相等,返回0

? ?2)若s1大于s2,返回一個正數(shù)

? ?3)若s1小于s2,則返回一個負數(shù)

參數(shù)s1和s2可以是字符數(shù)組名或字符串常量

7)字符串長度函數(shù)strlen(s1)

該函數(shù)返回字符串有效字符的個數(shù)(不包括字符結束符'\0')

參數(shù)s1可以是字符數(shù)組名或字符串常量

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

  • 指針是C語言中廣泛使用的一種數(shù)據(jù)類型。 運用指針編程是C語言最主要的風格之一。利用指針變量可以表示各種數(shù)據(jù)結構; ...
    朱森閱讀 3,615評論 3 44
  • 1.語言中變量的實質(zhì) 要理解C指針,我認為一定要理解C中“變量”的存儲實質(zhì), 所以我就從“變量”這個東西開始講起吧...
    金巴多閱讀 1,979評論 0 9
  • 1. 變量 不同類型的變量在內(nèi)存中占據(jù)不同的字節(jié)空間。 內(nèi)存中存儲數(shù)據(jù)的最小基本單位是字節(jié),每一個字節(jié)都有一個內(nèi)存...
    C語言學習閱讀 1,362評論 0 4
  • 在C語言中,五種基本數(shù)據(jù)類型存儲空間長度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來閱讀 4,053評論 0 2
  • 第1章 第一個C程序第2章 C語言基礎第3章 變量和數(shù)據(jù)類型第4章 順序結構程序設計第5章 條件結構程序設計第6章...
    小獅子365閱讀 10,874評論 3 71

友情鏈接更多精彩內(nèi)容