实用的指针用法数组
能够用指针作下面四个最基本的操做:
一、向OS申请一块内存,而且用指针处理它。这包括字符串,和一些你历来没见
过的东西,好比结构体。
二、经过指针向函数传递大块的内存(好比很大的结构体),这样没必要把所有数据
都传递进去。
三、获取函数的地址用于动态调用。
四、对一块内存作复杂的搜索,好比,转换网络套接字中的字节,或者解析文件。网络
對於其余情況,應當儘量使用數組,而將指針做為加速程序和優化的手段,缘由在於現在訪問數組或指針的語法都會翻譯為相同的機器碼,并且表現一致。函数
==========================================================================指针
sizeof() 函数记录的是所读取变量或数组结构体等所占内存的大小,当读取数组时,会将‘\0’计入长度;对象
strlen所做的仅仅是一个计数器的工做,它从内存的某个位置(能够是字符串开头,中间某个位置,甚至是某个不肯定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,而后返回计数器值(长度不包含'\0')。内存
strlen(char*)函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个'\0',若是你只定义没有给它赋初值,这个结果是不定的,它会从aa首地址一直找下去,直到遇到'\0'中止。字符串