c語言中怎麼字串賦值,C語言中怎麼字串賦值?

時間 2021-10-14 21:56:17

1樓:幻翼高達

需要準備的材料分別有:電腦、c語言編譯器。

1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如:test.cpp。

2、在test.cpp檔案中,輸入c語言**:char a[20];strcpy(a, "hello");printf("%s", a);。

3、編譯器執行test.cpp檔案,此時成功將字串賦值給了字串a並列印。

2樓:機鶯買茹雲

一、題目大意為輸出一個已知的字串。

解題思路:

定義一個字元陣列,並用「初始化列表」對其賦以初值

用迴圈逐個輸出此字元陣列中的字元

#include

intmain()

;int

i;for(i=0;i<15;i++)

printf("a=%c",c[i]);

printf("\n");

return0;}

擴充套件資料:

相關知識點:字元陣列的輸入輸出可以有兩種方法。

(1)逐個字元輸入輸出(%c)

(2)整個字串一次輸入輸出(%s)

輸出的字元中不包括結束符』\0』。用%s輸出字串時,printf函式中的輸出項是字元陣列名,不是陣列元素名。如果一個字元陣列中包含多個』\0』,則。遇第一個』\0』時輸出就結束

用scanf函式輸入一個字串,scanf函式中的輸入項c是已定義的字元陣列名,輸入的字串應短於已定義的字元陣列的長度。

(3)在c語言中,是將字串作為字元陣列來處理的,關心的是字串的有效長度而不是字元陣列的長度。為了測定字串的實際長度,c語言規定了字串結束標誌』\0』。

(4)』\0』代表ascii碼為0的字元,從ascii碼錶可以查到,ascii碼為0的字元不是一個可以顯示的字元,而是一個「空操作符」,即它什麼也不做。用它作為字串結束標誌不會產生附加的操作或增加有效字元,只起一個供辨別的標誌

(5)字元的不同寫法

(6)字串結束標誌

3樓:廖星扈飛宇

在c語言中,字串是以字元陣列形式儲存的,並約定以\0作為結束符。所以字串賦值不能直接用=賦值,而是要用專門的函式進行復制,在c語言中,這個函式為strcpy。

1函式名

:strcpy

2形式:

char

*strcpy(char

*dst,

const

char

*src);

3標頭檔案:

string.h

4功能:

將src中的字串複製到dst中,並返回dst的首地址。

5示例:

char

buf[100],

buf1[100];

strcpy(buf,

"test");//

將字串test賦值到buf。

strcpy(buf1,

buf);

//將字串buf的值,賦值給buf1.

4樓:

char x[50]="fbajdhajfgj";

char y="ffhadhjafgh";

char *z="as****g";//不建議用scanf("%s",x);

printf("%s",x);

5樓:匿名使用者

#include "string.h"

........

char str[10];

strcpy(str,"abcd");

6樓:

char string[100],*ptr;

ptr=string;

gets(ptr);

7樓:南坪中學校帥

上面太麻煩了

直接void main()}

怎麼進行字串賦值?c語言

8樓:鄉村打柴人

一、題目大意為輸出一個已知的字串。

解題思路:

定義一個字元陣列,並用「初始化列表」對其賦以初值用迴圈逐個輸出此字元陣列中的字元

#include

int main()

;int i;

for(i=0;i<15;i++)

printf("a=%c",c[i]);

printf("\n");

return 0;

9樓:寫在楓葉上的故事

字串賦值的方法:

1、定義的時候直接用字串賦值

如:char a[10]="hello";

注意:不能先定義再給它賦值,如char a[10]; a[10]="hello";這樣是錯誤的。

例如:main()

2、對陣列中字元逐個賦值

字串可以賦值給字元指標變數,或者將字串用字元陣列儲存。

如:char a[10]=;

3、利用strcpy

strcpy是一種c語言的標準庫函式,strcpy把含有'\0'結束符的字串複製到另一個地址空間,返回值的型別為char*。

如:char a[10];

strcpy(a, "hello");

擴充套件資料

字串賦值的注意事項:

1、在使用指標的時候,指標可以自增,而陣列名不能自增編譯器給陣列分配了空間。

3、在void指標使用的時候,不能使用指標運算,因為void型編譯器不能識別型別的長度(即指標所指物件的體積),p++這樣就是不合法的,即不能進行數**算,也不能使用*取值操作,想使用必須轉換為其它的型別。

10樓:加百列

在c語言中,字串的賦值主要有兩種方法,第一種是通過指標的方式直接賦值,第二種是通過陣列直接賦值。

1、指標式賦值。

通過程式的運**況,可以知道:char *p = "hello";這種字串的賦值方式是完全沒有問題的。要理解這種賦值方式,首先得理解雙引號(特別注意:

這個是雙引號,不要賦值的時候給弄了個單引號)在這個語句中做了什麼工作。雙引號主要做了3個工作,分別是:

(1)申請了空間(在常量區),存放了字串。

(2)在字串尾加上了「\0」。

(3)返回地址。

這裡所返回的地址就賦值給了char *型別的指標變數p。

2、通過字元陣列直接把字串賦值。程式如下:

11樓:薄瓔脫雅嫻

首先要弄清楚

什麼是字串指標,還有什麼叫字元陣列。

字串指標只是一個指標,就像你上面的a

裡面的s

沒有初始化,那麼你呼叫讀串

函式資料要寫到**呢?

不知道吧

,因為s

不知道指向**。

char

*s;s="abcdef";

這又是什麼意思呢?

這個操作

是將一個

串("abcdef"

在記憶體中已經存在了),只是將這個串的首地址賦給s,也就是讓s指向

這個串。你可以把這個串理解成

在編譯時期就已經確定好了的資料。我們可以用它。但不能更改他的值。

什麼叫字元陣列呢?

首先要弄清楚

什麼叫陣列

,如int

array[4]=;

這是什麼意思呢?

就是四個連續的整數

吧。同樣

字元陣列也

是連續的

n個字元吧

如char

arr[3]=;

這是一個陣列

,有三個元素,分別是ab

c,看起來「好像」字串呀,為什麼是

「好像」,因為它與字串

有著本質的區別。字串是n

個連續的字元

+『\0』

組成,我們上面的

例子只有

n個連續的字元,沒有

『\0』

吧。所以它不是字串。

為了使用方便

呢,編譯器允許我們

使用如下方式初始化一個字串。

1:char

*s="abcdef";

2:char

ss[10]="abcd";

3:char

sss[10]=;

上面三種方式

都是正確的,但是

有區別。

1:上面已經講了,是將已經存在於記憶體中的字串的首地址賦值給s

2:這是將已經存在於記憶體中的字串

拷貝到ss

這個陣列裡面,是一個拷貝

過程,產生的影響是系統中存在兩個

相同的字串。

3:同2

12樓:庠序教孝悌義

如果要對質富川進行賦值的話。首先你要擁有一個字串變數比如說str如果要對質富川進行賦值的話,首先你要擁有一個字串變數,比如說string a

然後你就可以說a等於多少多少加個引號就行了

13樓:仉巨集掌翠絲

char

string[500]="abcdefg";

這個就是說你在給一個陣列賦值

但是如果你定義完陣列以後又這樣

string[500]="abcdefg";

就是說你在給陣列裡的第500個元素賦值

首先陣列下標最大是499

沒有500

其次只能存放一個字元你確放了一個字串

當然不對了

14樓:風若遠去何人留

在c語言中,字串是以字元陣列形式儲存的,並約定以\0作為結束符。所以字串賦值不能直接用=賦值,而是要用專門的函式進行復制,在c語言中,這個函式為strcpy。

1 函式名 :

strcpy

2 形式:

char * strcpy(char *dst, const char *src);

3 標頭檔案:

string.h

4 功能:

將src中的字串複製到dst中,並返回dst的首地址。

5 示例:

char buf[100], buf1[100];

strcpy(buf, "test");// 將字串test賦值到buf。

strcpy(buf1, buf); //將字串buf的值,賦值給buf1.

15樓:卑和田麗文

需要準備的材料分別有:電腦、c語言編譯器。

1、首先,開啟c語言編譯器,新建一個初始.cpp檔案,例如:test.cpp。

2、在test.cpp檔案中,輸入c語言**:chara[20];strcpy(a,

"hello");printf("%s",a);。

3、編譯器執行test.cpp檔案,此時成功將字串賦值給了字串a並列印。

16樓:

string賦值,需要加個#include然後用strcpy

strcpy(a,"right");來完成,試看吧會有return, return a得值所以也可以寫成printf("%s\n",strcpy(a,"right"));

因為string 或者 char array 不能直接賜值,所以要用裡的工具來完成。

17樓:

char a="right";

printf("%s",a);

就可以了,單個char型變數只能存一個字元,所以字串要用一個字元陣列來存。

18樓:匿名使用者

c語言沒有字串變數,要用字元陣列來實現

如下char a="right";

19樓:南北

字串的賦值主要有兩種方法,第一種是通過指標的方式直接賦值,第二種是通過陣列直接賦值。

1、指標式賦值。

通過程式的運**況,可以知道:char *p = "hello";這種字串的賦值方式是完全沒有問題的。要理解這種賦值方式,首先得理解雙引號(特別注意:

這個是雙引號,不要賦值的時候給弄了個單引號)在這個語句中做了什麼工作。雙引號主要做了3個工作,分別是:

(1)申請了空間(在常量區),存放了字串。

(2)在字串尾加上了「\0」。

(3)返回地址。

這裡所返回的地址就賦值給了char *型別的指標變數p。

2、通過字元陣列直接把字串賦值。程式如下:

c語言中字串連線怎麼解決,C語言中字串連線怎麼解決??

大野瘦子 include char a 10 123 char b 10 abc char c 20 strcpy c,a 把串a複製到有足夠空間的c中strcat c,b 把b連線到c的串尾需要注意的事項 c的長度一定要能夠容納要轉換的數字的長度,比如下面的例子,c的長度至少為8 1234567 ...

c語言,字串,C語言中,字串是什麼?

c語言中,字串是什麼?位操作運算都只能是整形或字元型,字元型實際是單位元組整形。包括以下幾個操作符 按位與 按位或。按位異或。左移 右移 另外還有一個取餘操作 a b的意思是,a除以b,取餘數。這個是c語言的硬性規定,位操作都是正數按照二進位制進行表達的時候才有的概念 而取餘操作是整數相除得餘數,餘...

c語言中關於字串轉整型,C語言中關於字串轉整型

字串轉成整型可以使用atoi函式。函式原型 int atoi const char nptr 功能 把字串轉換成整型數。引數nptr字串,如果第一個非空格字元存在,是數字或者正負號則開始做型別轉換,之後檢測到非數字 包括結束符 0 字元時停止轉換,返回整型數。否則,返回零。include inclu...