簡體   English   中英

有什么類似於Java中的Java字符串'charAt()'方法嗎?

[英]is there anything similar to Java's string 'charAt()' Method in C?

我正在嘗試將一段代碼從Java轉換為C,但我被困在這里,試圖在每個位置獲取一個字符。

char ch;

line += ' ';
    while (pos < line.length()) 
    {
      ch = line.charAt(pos);  
...

在C中有什么類似的東西可以將ch = line.charAt(pos)從Java轉換為C?

您可以像訪問String一樣訪問值。

char str[] = "Hello World";
printf("%c", str[0]);

您可以通過這種方式在特定位置獲得角色

char str[] = "Anything";
printf("%c", str[0]);

但是當您有一個指針數組時:

char* an_array_of_strings[]={"balloon", "whatever", "isnext"};
cout << an_array_of_strings[1][2] << endl;

如果您需要更改字符串,請使用

char an_array_of_strings[][20]={"balloon", "whatever", "isnext"};
cout << an_array_of_strings[1][2] << endl;

資料來源: 這里

在C中,從字符數組(即字符串)中獲取char的最簡單方法

給定您發布的代碼中的變量,

char ch;

line += ' ';
while (pos < line.length()) 
{
    ch = line.charAt(pos);  
...
  1. 假設字符串以NUL字節('\\ 0')終止
  2. 假設line[]數組中有另一個字符的空間

會成為:

#include <string.h>
strcat( line, " ");
size_t maxPos = strlen( line );
for( pos = 0; pos < maxPos; pos++ )
{
    ch = line[pos];
....

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM