2016-05-26 62 views
0

我想要訪問數組中的字符串,就像可以從數組中訪問整數一樣,例如A={1,2,3}然後在調用A[0]時會得到1。同樣,對於字符串應該做什麼A={a,b,c}A[0]我得到a如何在數組中的每個內存塊中輸入一個字符串?

我想這對於輸入,

char in[1000]; 
for (i=0;i<5;i++) 
{ 
    in[i]="A"; 
    printf("in is %f",in[i]); 
} 

,但我得到一個警告assignment makes integer from pointer without a cast

+0

嘗試改變'的printf( 「在爲%F」,在[1])''到的printf(「在爲% c「,in [i])' – TychoTheTaco

+0

您正在分配一個字符,嘗試將[i] =」A「更改爲[i] ='A',然後將%c用於printf。 – Aradhna

+0

@TychoTheTaco它刪除了另一個警告,但我仍然得到'賦值使指針沒有轉換'警告的整數。在運行代碼時,我得到'in N'五次 –

回答

0

由於您正在製作字符數組,因此您需要爲其提供字符值。

更改您的代碼以

in[i]='A' 
printf("in is %c",in[i]); 

希望這有助於:)

0

您應該使用%s字符串不%f

  • %S - 字符串(在C的情況下,字符數組)
  • %C - 性狀
  • %F - 浮
  • %d - 詮釋
  • %1! - 長整型

你舉的例子:

int i=0; 
char in[1000]; 
for (i=0;i<5;i++) 
{ 
    in[i]='A'; 
    printf("in is %c\n",in[i]); 
} 

示例代碼:example

相關問題