c 函式如何傳遞字串,C 函式如何傳遞字串

時間 2021-06-25 14:48:03

1樓:椴

substring() 擷取子串

它有兩種形式,第一種是:string substring(int startindex)

第二種是:string substring(int startindex,int endindex)

concat() 連線兩個字串

replace() 替換

它有兩種形式,第一種形式用一個字元在呼叫字串中所有出現某個字元的地方進行替換,形式如下:

string replace(char original,char replacement)

例如:string s=」hello」.replace(』l',』w');

第二種形式是用一個字元序列替換另一個字元序列,形式如下:

string replace(charsequence original,charsequence replacement)

trim() 去掉起始和結尾的空格

valueof() 轉換為字串

eg: system.out.prinltln(string.valueof(-129.12d)); //列印129.12

tolowercase() 轉換為小寫

touppercase() 轉換為大寫

length() 取得字串的長度

例:char chars=;

string s=new string(chars);

int len=s.length();

charat() 擷取一個字元

例:char ch;

ch=」abc」.charat(1);

返回值為』b』

getchars() 擷取多個字元

void getchars(int sourcestart,int sourceend,char target,int targetstart)

sourcestart 指定了子串開始字元的下標

sourceend 指定了子串結束後的下一個字元的下標。因此,子串包含從sourcestart到sourceend-1的字元。

target 指定接收字元的陣列

targetstart target中開始複製子串的下標值

例:string s=」this is a demo of the getchars method.」;

char buf=new char[20];

s.getchars(10,14,buf,0);

getbytes()

替代getchars()的一種方法是將字元儲存在位元組陣列中,該方法即getbytes()

例:string s = 「hello!你好!」;

byte bytes = s.getbytes();

tochararray()

例:string s = 「hello!你好!」;

char ss = s.tochararray();

equals()和equalsignorecase() 比較兩個字串的內容

equals區分字母大小寫;equalsignorecase不區分大小寫

regionmatches() 用於比較一個字串中特定區域與另一特定區域,它有一個過載的形式允許在比較中忽略大小寫。

boolean regionmatches(int startindex,string str2,int

str2startindex,int numchars)

boolean regionmatches(boolean ignorecase,int startindex,string

str2,int str2startindex,int numchars)

startswith()和endswith()

startswith()方法決定是否以特定字串開始,endwith()方法決定是否以特定字串結束

equals()和==

equals()方法比較字串物件中的字元,==運算子比較兩個物件是否引用同一例項。

例:string s1=」hello」;

string s2=new string(s1);

s1.eauals(s2); //true

s1==s2;//false

compareto()和comparetoignorecase() 按字典次序比較字串的大小

eg: system.out.println("a".compareto("b")); //列印-1

system.out.println("b".compareto("a")); //列印1

system.out.println("a".compareto("a")); //列印0

indexof()和lastindexof()

indexof() 查詢字元或者子串第一次出現的地方。

lastindexof() 查詢字元或者子串是後一次出現的地方。

string spliter (string regex);引數regex把原來字串分割成幾個字串;

eg: str="11:23:14";

result=str.spliter();

system.out.println(result); //列印「11」,「23」,「14」

stringbuffer建構函式(字串快取)

stringbuffer定義了三個建構函式:

stringbuffer()

stringbuffer(int size)

stringbuffer(string str)

stringbuffer(charsequence chars)

下面是stringbuffer相關的函式:

length()和capacity()

一個stringbuffer當前長度可通過length()方法得到,而整個可分配空間通過capacity()方法得到。

ensurecapacity() 設定緩衝區的大小

void ensurecapacity(int capacity)

setlength() 設定緩衝區的長度

void setlength(int len)

charat()和setcharat()

charat()同string類相同;

char charat(int where)

void setcharat(int where,char ch)

在字串的where的位置放置ch;

2樓:匿名使用者

以字串陣列形式傳遞,指標方式 或 陣列方式 都能實現引數傳遞。

如:#include

#include

void fun1( char *pstr )void fun2( char arr )int main()

3樓:篤俠

a1="男人";改為 strcpy(a1,"男人");應該是可以的(呼叫xingming1函式是,實參是字元陣列名)。

4樓:麻花疼不疼

set(string("2005-05005"));就可以了吧。。

c 字串長度函式,求字串長度函式 C

司馬刀劍 string str welcome to chaina int m1 str.size 求字串長度或者下面的 int m2 str.length 同上面size功能一樣,都是求字串長度的 賈林龐喬 sizeof 得到的是資料型別的長度,比如int char double型別的sizeof...

C 字串陣列如何作為函式引數

sizeof string 由於它們都是和系統相關的 我的作業系統是32位的 所以在不同的系統下取值可能不同,這務必引起注意,儘量不要在這方面給自己程式的移植造成麻煩。一般情況下,在32位系統中,sizeof string 為16位元組。sizeof都和記憶體中的儲存方式有關。你這裡沒有理清楚陣列函...

C語言如何返回字串,C語言中函式如何返回字串?

1 c語言中,字串不是一種基本型別,其本質是字元陣列,因此直接返回字串是不行的。因為c語言不允許例如 char 10 fun 這樣的函式定義方式。但是可以返回字元指標。返回一個動態分配的記憶體地址。2 例如 char c char getinput int length length 為要輸入字串的...