#define _crt_secure_no_warnings
#include
#include
#include
/*c語言沒有字串型別,通過字元資料模擬
c語言字串,以字元『\0』結尾,數字0
*/int
main01()
;printf
("buf = %s\n"
, buf)
;//buf = abc燙燙虥??(亂碼)
char buf2[
100]=;
printf
("buf2 = %s\n"
, buf2)
;//buf2 = abc
//所有元素賦值為0
char buf3[
100]=;
//char buf4[2] = ;//陣列越界
char buf5[50]
=;printf
("buf5 = %s\n"
, buf5)
;char buf6[50]
=;printf
("buf6 = %s\n"
, buf6)
;char buf7[50]
=;printf
("buf7 = %s\n"
, buf7)
;//使用字串初始化,常用
char buf8=
"kjgklhjghfh"
;//strlen:測字串長度,不包括字元'\0'
//sizeof:測陣列長度,包括字元'\0'
printf
("strlen(buf8) = %d, sizeof(buf8) = %d\n"
,strlen
(buf8)
,sizeof
(buf8));
char buf9[
100]
="kjgklhjghfh"
;printf
("strlen(buf9) = %d, sizeof(buf9) = %d\n"
,strlen
(buf9)
,sizeof
(buf9));
//11,100
printf
("\n");
system
("pause");
return0;
}int
main()
printf
("\n");
//指標方法
//陣列名字,陣列首元素位址
p = buf;
for(i =
0; i < n; i++
)printf
("\n");
for(i =
0; i < n; i++
)printf
("\n");
for(i =
0; i < n; i++
)printf
("\n");
//以上輸出均合法且相同
//buf和p顯然不等價
p++;//buf++;不合法,因為buf只是乙個常量,不能修改
p =0x1122
;//buf = 0x1122;不合法,因為不能修改
printf
("\n");
system
("pause");
return0;
}
字串初始化
在c語言程式設計中,當我們宣告乙個字串陣列的時候,常常需要把它初始化為空串。總結起來有以下三種方式 1 char str 10 2 char str 10 3 char str 10 str 0 0 第 1 2 種方式是將str陣列的所有元素都初始化為 0 而第 3 種方式是只將str陣列的第乙個元...
字串初始化
在 裡,經常會用字串進行初始化操作。比如 void func void 對於上面2條初始化語句,它們的區別是什麼呢?1,首先,hello world 是乙個字串常量,存放在靜態常量區。2,str1是乙個字元陣列,分配在棧上,儲存空間由 hello world 的長度 含 0 決定,存放的內容由 he...
字串初始化
字串初始化使用字串初始化操作符即百分號 標記轉化說明符的開始。在 左邊為格式化字串,右邊為被格式化的值。format hello,s.s enough?values world cold print format values hello,world.cold enough?格式化字串的 s部分為轉...