c語言定義字元串的長度
⑴ c語言 字元串長度
這個字元串長度為10個字元。
你可以用strlen("ab'1'\\\12803")來求這個字元串的長度。
也可以用sizeof("ab'1'\\\12803")來求,但是這個求出的結果是多了一個字元串結束符\0。
你可以試著輸出這個字元串看看是不是10個字元。
實際上,這10個字元分別為:
1、a
2、b
3、'
4、1
5、'
6、\\(\\表示:前一個表示這是一個轉義字元,後一個才是字元串中的真實字元)
7、\12(同上,\表示這是一個轉義字元,其後面的1~3個數字位是一個八進制數,在這里,第3個數字為8,所以它不是這個八進制數的一部分,即這個八進制數應該是12,轉換為10進制數即為10,對應的ASCII碼為一個換行符)
8、8
9、0
10、3
註:\用來說明一個轉義字元,如\\表示反斜杠字元「\」,\ddd表示1~3位八進制數所代表的字元(ASCII碼),\xhh表示1~2位十六進制數所代表的字元。
⑵ c語言字元串長度有哪些
這個字元串長度為10個字元。
可以用strlen("ab'1'\12803")來求這個字元串的長度。
也可以用sizeof("ab'1'\12803")來求,但是這個求出的結果是多了一個字元串結束符 。
可以試著輸出這個字元串看看是不是10個字元。
strlen()函數判斷的字元串長度是以 為結尾作為標志的。
當char * m=new char[TOKEN_LENGTH]後,雖然為指針分配了地址,但是其指向的內容未被初始化,所以m指向的內容是未知的,可能在第24個字元的位置發現了 所以strlen()顯示長度為24。
數據類型
字元串數據類型是建模在形式字元串的想法上的數據類型。字元串是幾乎在所有編程語言中可以實現的非常重要和有用的數據類型。在某些語言中它們可作為基本類型獲得,在另一些語言中做為復合類型獲得。多數高級語言的語法允許通常用某種方式引用起來的字元串來表示字元串數據類型的實例;這種元字元串叫做「文本」或「字元串文本」。
以上內容參考:網路-字元串
⑶ c語言編程 字元串長度
#include<stdio.h>
int strlen(char stry);//由於子函數在主函數之前,此句可去
int strlen(char stry)//自定義函數名不要與庫函數中中的函數名,關鍵字相同,把函數名改改看
{
int i;
for(i=0;i<40;i++)
if(stry[i]=='\0')
return i;
}
main()
{
int n;
char str[40];
printf("input a string:");
scanf("%s",str);
n=strlen(str);
printf("%d\n",n);
}
助你好運啊
⑷ c語言中關於字元串長度的問題
不,若不在[]填數字,就必須在初始化這個str,在等號右邊寫具體數據,有幾個數據,編譯器就自動在[]中填幾了。所以char str[]{0}這樣寫是錯誤的,要寫成char str[]={'a','b','c'};這樣的形式,編譯器就會認為[]中是3了。另,char型數組還可以char str[]="1234567";這樣來定義,但這時[]中並不是7而是8,原來編譯器把str作為字元串對待了,要在7後自動加一個結束符'\0'。
⑸ 在c語言中怎樣定義字元串
在c語言中定義字元串:
C語言中用字元型CHAR來表示存儲字元,沒有C++裡面的可以單獨的字元串類型String;
所以C裡面使用字元數組和字元指針來實現字元串功能;
C的字元數組只能在定義時一起賦值,以後只能給單個元素一一賦值;
char string0[10];
char string1[]="prison break";
char string2[100]="michael scofield";
1句表示定義個長度為10的字元串,但未賦值,2句表示定義了一個字元數組string1,並進行初始化,使得其長度自動為13(字元串」prison break"中的字元個數加上結尾的'