2011-03-07 36 views

回答

3

你爲什麼不只是它的下標...

main() { 

    char *str = "hello"; 

    printf("%c", str[0]); // h 


    return 0; 
} 

CodePad

You can also use array syntax定義字符串char str[] = "hello"

更新

#include <string.h> 
#include <stdio.h> 

main() { 

    char str[] = "hello"; 
    int i; 
    int strLength = strlen(str); 

    for (i = 0; i < strLength; i++) { 

    printf("[%c]", str[i]); 

    } 


    return 0; 
} 

輸出

[h][e][l][l][o] 

CodePad

+0

'#import'? ??對於'printf'原型,您還需要'#include '。 – pmg 2011-03-07 09:22:03

+0

@pmg哎呦,自從我用C以來已經有一段時間了。將會修改,謝謝。 – alex 2011-03-07 12:59:09

0

考慮使用函數memcpy。

2

C中的字符串實際上是一個字符數組,因此您不必執行任何操作。

檢索它像這樣


char *string = "abcdef"; 
for (int i = 0; i < 7; ++i) { 
    printf("%c\n", string[i]); 
} 
+0

有沒有C++代碼在這裏,請不要發佈C++代碼作爲一個答案。 – 2011-03-07 06:26:11

+0

@Jim我更新了答案。對於那個很抱歉。 – Angelo 2011-03-07 12:30:03

0

試試這個:

char variable[] = "abc"; 
0

在C你沒有爲字符串的任何特定類型。字符串是一個char *並指向字符串的開頭。每個字符串都以空字符結尾。所以,你可以直接使用你的字符串(字符*)變量作爲數組,但停止一個字符短了的strlen的

0

C中的一個串本身是一個陣列使用以下命令:

焦炭yourarray [] =「 asldkjsl「;

每個字符是一個數組,你可以訪問它們作爲yourarray [0],yourarray [1]

相關問題