2011-04-04 163 views
1

如何在C語言中創建字符串數組?它的長度應該是5,並且應該使用一個循環來獲取來自用戶的輸入以填充該數組。最後,我應該將數組中的所有字符串值打印給用戶。將字符串添加到數組

+7

C或C++?這些是單獨的語言...另外,你到目前爲止嘗試過什麼?這看起來像功課,雖然我們會幫助你,但我們不會爲你完成整個任務。你從來沒有學過任何東西。 – Cameron 2011-04-04 22:38:39

+6

作業?閱讀[C信息](http://stackoverflow.com/tags/c/info)和[C++信息](http://stackoverflow.com/tags/c%2b%2b/info)。 – pmg 2011-04-04 22:41:19

+0

這聽起來像是你的意思是一個由五個字符串組成的數組。請記住,在C中,一個字符串本身就是一個字符數組;所以你需要一個數組的數組(或指針,但這可能超出了你現在所學的內容)。這有幫助嗎?正如評論所說,你可能不會在這裏找到任何只爲你寫代碼的人。但是,如果您願意努力並顯示您編寫的代碼,人們將幫助您找到其中的錯誤。 – 2011-04-04 23:44:36

回答

4

C中的字符串實際上是一個字符數組。如果你想長度爲256的字符數組,你可以做這樣的:

char my_var[256]; 

您可以從標準輸入這樣的長度爲128的字符串閱讀:

#include <stdio.h> 
// ... 
fgets(my_var,128,stdin); 

你可以打印出如下的字符串:

printf("String is: %s",my_var); 

字符串按字符存儲在數組中,並以空字符'\ 0'結尾。因此,如果my_var包含{'c','a','n','\0','s'},那麼my_var看起來像「can」。但是,如果字符串沒有結束,直到它看到一個空字符。所以如果你逐個字符地填充一個字符串,你必須附加'\ 0'。如果你用類似fgets的東西填充它,空字符會自動附加。另外請注意'\ 0'等於零。

這些只是簡單的howtos讓你開始。正如pmg所說,我們不是在這裏爲你做功課,只是給你提示。查找fgets,printf,「C中的字符串」等。如果您遇到困難,可以回來問一個更具體的問題!

+0

嗯@bo也許提到空終止符將是適當的 – pmg 2011-04-04 23:55:05

+0

好點!會做。 – usul 2011-04-05 02:57:05

0

嘗試一下本作C,

string FileMeasure="Hello FILE!" 
int TempNumOne=FileMeasure.size(); 
char Filename[100]; 
for (int a=0;a<=TempNumOne;a++) 
    { 
     Filename[a]=FileMeasure[a]; 
    } 

,並嘗試這對於Java,

String[] words = {"ace", "boom", "crew", "dog", "eon"}; 

List<String> wordList = Arrays.asList(words); 

for (String e : wordList) 
{ 
    System.out.println(e); 
}