1. 字串巨集
#define const_str "const str"
巨集在預編譯的時候會替換成實際的值
2.陣列
陣列名對應一塊記憶體,在生命週期內其位址和容量不會改變,陣列裡面的內容可以變。
3.指標
指標指向一塊記憶體,如果指向字串常量(ro),則不能修改內容。
如果申請了一塊記憶體,複製字串常量,則可以修改內容
#include
#include <
string
.h>
#include
#include
#define const_str "const string"
typedef void (
*string_test_routine_t)()
;void pointer_strcpy_macro(void)
void pointer_strcpy_string(void)
void pointer_macro_string(void)
void pointer_string(void)
void array_macro_string(void)
void array_string(void)
void array_strcpy_string(void)
void array_strcpy_macro(void)
static string_test_routine_t func_base=
;#define num_func (sizeof (func_base)
/ sizeof(func_base[0]))
void test_string(void)
else
if( pid =
= 0 )
else}}
int main()
0 給主人留下些什麼吧!~~
指標字串和陣列指標
指標是c語言的精髓,只有掌握好指標才算是真正學會了c語言,以下就是學習指標的例子 include main int n 5 sort name,n print name,n if strcmp1 name 0 name 1 0 printf s,s n name 0 name 1 if strcmp...
指標指向字串和陣列儲存字串區別
include void main 定義了乙個指向字串的指標,str是在棧上分配的變數,儲存的位址對應的是在常量區中分配的空間。aafg 是儲存在常量區裡面,是不能改變的。char str 其實存在一種 const char 型別的隱式轉換,而strcpy要做的改變常量,所以程式編譯的時候沒錯,執行...
指標和陣列名及字串的區別
學習嵌入式技術有一段時間了,對於c語言容易混淆不清楚的地方自己做了一下總結 指標和陣列名 這裡不談原理和概念 自己總了他們在用法上的不同和相同 例子 int a 10 int b 不同 1 sizeof 不同 sizeof a 為整個陣列的記憶體,sizeof b 為指標的記憶體一般是4位元組 2 ...