<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
    <channel>
        
        <title>
            <![CDATA[ C - freeCodeCamp.org ]]>
        </title>
        <description>
            <![CDATA[ エキスパートの手によるプログラミングチュートリアル記事を幅広く掲載。ウェブ開発、データサイエンス、DevOps、セキュリティ、開発者としてのキャリアなどについて学びましょう。 ]]>
        </description>
        <link>https://www.freecodecamp.org/japanese/news/</link>
        <image>
            <url>https://cdn.freecodecamp.org/universal/favicons/favicon.png</url>
            <title>
                <![CDATA[ C - freeCodeCamp.org ]]>
            </title>
            <link>https://www.freecodecamp.org/japanese/news/</link>
        </image>
        <generator>Eleventy</generator>
        <lastBuildDate>Fri, 22 May 2026 15:16:06 +0000</lastBuildDate>
        <atom:link href="https://www.freecodecamp.org/japanese/news/tag/c/rss.xml" rel="self" type="application/rss+xml" />
        <ttl>60</ttl>
        
            <item>
                <title>
                    <![CDATA[ C 言語の三項演算子について ]]>
                </title>
                <description>
                    <![CDATA[ プログラマーは、長い if - else 条件文の代わりに三項演算子を使って、意思決定を行うことがあります。 三項演算子は 3 つの項をとります:  1. 最初の項は比較演算式です  2. 2 番目の項は、比較演算式が true の時に、結果として評価される式です  3. 3 番目の項は、比較演算式が false の時に、結果として評価される式です 三項演算子を、簡潔に記述する方法、または if-else 文を記述する方法として考えてみると役に立ちます。 例えば、まず次のように、単純な意思決定に if と  else を使用する場合を見てみましょう: int a = 10, b = 20, c; if (a < b) {     c ]]>
                </description>
                <link>https://www.freecodecamp.org/japanese/news/c-ternary-operator/</link>
                <guid isPermaLink="false">61f7cc900e2ac404be73145e</guid>
                
                    <category>
                        <![CDATA[ C PROGRAMMING ]]>
                    </category>
                
                    <category>
                        <![CDATA[ C ]]>
                    </category>
                
                    <category>
                        <![CDATA[ Ternary Operator ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Manabu Matsumoto ]]>
                </dc:creator>
                <pubDate>Wed, 09 Mar 2022 23:45:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/japanese/news/content/images/2022/01/5f9c9db2740569d1a4ca3922.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>原文:</strong> <a href="https://www.freecodecamp.org/news/c-ternary-operator/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">Ternary Operator in C Explained</a>
      </p><p>プログラマーは、長い <strong>if - else</strong> 条件文の代わりに<strong>三項演算子</strong>を使って、意思決定を行うことがあります。</p><p>三項演算子は 3 つの項をとります:</p><ol><li>最初の項は比較演算式です</li><li>2 番目の項は、比較演算式が true の時に、結果として評価される式です</li><li>3 番目の項は、比較演算式が false の時に、結果として評価される式です</li></ol><p>三項演算子を、簡潔に記述する方法、または if-else 文を記述する方法として考えてみると役に立ちます。 例えば、まず次のように、単純な意思決定に <strong><strong>if</strong></strong> と <strong><strong>else</strong></strong> を使用する場合を見てみましょう:</p><pre><code class="language-c">int a = 10, b = 20, c;

if (a &lt; b) {
    c = a;
}
else {
    c = b;
}

printf("%d", c);
</code></pre><p>この例では 10 行以上を使用していますが、そんなには必要はありません。三項演算子を使用することで、上記のプログラムを、たった 3 行のコードで記述できます。</p><h3 id="-"><strong>構文</strong></h3><p><code>condition ? value_if_true : value_if_false</code></p><p>この文は、<code>condition</code> を満たしている場合には <code>value_if_true</code> を評価し、そうでなければ <code>value_if_false</code> を評価します。</p><p>三項演算子を使用して書き換えられた上記の例がこちらです:</p><pre><code class="language-c">int a = 10, b = 20, c;

c = (a &lt; b) ? a : b;

printf("%d", c);
</code></pre><p>条件文 <code>a &lt; b</code> が true なので、<code>c</code> は <code>a</code> と同じ値に設定されます。</p><p><code>value_if_true</code> と <code>value_if_false</code> の項は、同じ型の値である必要があり、また、完全な文ではなく単純な式でなければならないことを覚えておいてください。</p><p>また、三項演算子は if-else 文のように入れ子にできます。次のコードについて考えてみましょう:</p><pre><code class="language-c">int a = 1, b = 2, ans;
if (a == 1) {
    if (b == 2) {
        ans = 3;
    } else {
        ans = 5;
    }
} else {
    ans = 0;
}
printf ("%d\n", ans);
</code></pre><p>上記のコードを、入れ子にした三項演算子を用いて書き換えた例がこちらです:</p><pre><code class="language-c">int a = 1, b = 2, ans;
ans = (a == 1 ? (b == 2 ? 3 : 5) : 0);
printf ("%d\n", ans);
</code></pre><p>両方の一連のコードの出力は、次のようになるはずです:</p><pre><code class="language-c">3
</code></pre> ]]>
                </content:encoded>
            </item>
        
            <item>
                <title>
                    <![CDATA[ C 言語の書式指定子について ]]>
                </title>
                <description>
                    <![CDATA[ 書式指定子は、標準出力に表示されるデータの型を定義します。printf() で書式が設定された出力を表示する場合、または scanf()  で入力を受け付ける場合に、書式指定子を使用する必要があります。 標準 C の中で使用できる、書式指定子をいくつか以下に示します: 指定子用途%c文字%s文字列%hishort 型 10 進整数 (符号付き)%hushort 型 10 進整数 (符号無し)%Lflong double 型浮動小数点数%n表示は何も行わず整数変数に出力済みもしくは入力済み文字数を格納%d10 進符号付き整数 (基数が 10)%i符号付き整数 (基数を自動的に検出)%o8進符号無し整数 (基数が 8)%x16進符号無し整数 (基数が 16)%pアドレス (または ポインタの値)%f(小数形式) 浮動小数点数%u10 進符号無し整数%e指数形式浮動小数点数%E指数形式浮動小数点数 (指数記号は大文字 E)%%% 記号例: 書式指定子 %c による文字の出力: #include <stdio.h>  int main() {    char first_ch = 'f' ]]>
                </description>
                <link>https://www.freecodecamp.org/japanese/news/format-specifiers-in-c/</link>
                <guid isPermaLink="false">61f7c7b70e2ac404be731440</guid>
                
                    <category>
                        <![CDATA[ C ]]>
                    </category>
                
                <dc:creator>
                    <![CDATA[ Manabu Matsumoto ]]>
                </dc:creator>
                <pubDate>Wed, 02 Mar 2022 23:45:00 +0000</pubDate>
                <media:content url="https://www.freecodecamp.org/japanese/news/content/images/2022/01/5f9c9d9c740569d1a4ca38a4.jpg" medium="image" />
                <content:encoded>
                    <![CDATA[ <p data-test-label="translation-intro">
        <strong>原文:</strong> <a href="https://www.freecodecamp.org/news/format-specifiers-in-c/" target="_blank" rel="noopener noreferrer" data-test-label="original-article-link">Format Specifiers in C</a>
      </p><p>書式指定子は、標準出力に表示されるデータの型を定義します。<code>printf()</code> で書式が設定された出力を表示する場合、または <code>scanf()</code> で入力を受け付ける場合に、書式指定子を使用する必要があります。</p><p>標準 C の中で使用できる、書式指定子をいくつか以下に示します:</p><!--kg-card-begin: html--><table>
<thead>
<tr>
<th style="text-align: center">指定子</th>
<th style="text-align: center">用途</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: center">%c</td>
<td style="text-align: center">文字</td>
</tr>
<tr>
<td style="text-align: center">%s</td>
<td style="text-align: center">文字列</td>
</tr>
<tr>
<td style="text-align: center">%hi</td>
<td style="text-align: center">short 型 10 進整数 (符号付き)</td>
</tr>
<tr>
<td style="text-align: center">%hu</td>
<td style="text-align: center">short 型 10 進整数 (符号無し)</td>
</tr>
<tr>
<td style="text-align: center">%Lf</td>
<td style="text-align: center">long double 型浮動小数点数</td>
</tr>
<tr>
<td style="text-align: center">%n</td>
<td style="text-align: center">表示は何も行わず整数変数に出力済みもしくは入力済み文字数を格納</td>
</tr>
<tr>
<td style="text-align: center">%d</td>
<td style="text-align: center">10 進符号付き整数 (基数が 10)</td>
</tr>
<tr>
<td style="text-align: center">%i</td>
<td style="text-align: center">符号付き整数 (基数を自動的に検出)</td>
</tr>
<tr>
<td style="text-align: center">%o</td>
<td style="text-align: center">8進符号無し整数 (基数が 8)</td>
</tr>
<tr>
<td style="text-align: center">%x</td>
<td style="text-align: center">16進符号無し整数 (基数が 16)</td>
</tr>
<tr>
<td style="text-align: center">%p</td>
<td style="text-align: center">アドレス (または ポインタの値)</td>
</tr>
<tr>
<td style="text-align: center">%f</td>
<td style="text-align: center">(小数形式) 浮動小数点数</td>
</tr>
<tr>
<td style="text-align: center">%u</td>
<td style="text-align: center">10 進符号無し整数</td>
</tr>
<tr>
<td style="text-align: center">%e</td>
<td style="text-align: center">指数形式浮動小数点数</td>
</tr>
<tr>
<td style="text-align: center">%E</td>
<td style="text-align: center">指数形式浮動小数点数 (指数記号は大文字 E)</td>
</tr>
<tr>
<td style="text-align: center">%%</td>
<td style="text-align: center">% 記号</td>
</tr>
</tbody>
</table><!--kg-card-end: html--><h2 id="-">例:</h2><h3 id="-c-">書式指定子 <code>%c</code> による文字の出力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt; 

int main() { 
  char first_ch = 'f'; 
  printf("%c\n", first_ch); 
  return 0; 
} 
</code></pre><p><strong>出力:</strong></p><pre><code>f
</code></pre><h3 id="-s-">書式指定子 <code>%s</code> による文字列の出力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt; 

int main() { 
  char str[] = "freeCodeCamp"; 
  printf("%s\n", str); 
  return 0; 
} 
</code></pre><p><strong>出力:</strong></p><pre><code>freeCodeCamp
</code></pre><h3 id="-c--1">書式指定子 <code>%c</code> による文字の入力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt; 

int main() { 
  char user_ch; 
  scanf("%c", &amp;user_ch); // user inputs Y
  printf("%c\n", user_ch); 
  return 0; 
} 
</code></pre><p><strong>出力:</strong></p><pre><code>Y
</code></pre><h3 id="-s--1">書式指定子 <code>%s</code> による文字列の入力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt; 

int main() { 
  char user_str[20]; 
  scanf("%s", user_str); // user inputs fCC
  printf("%s\n", user_str); 
  return 0; 
} 
</code></pre><p><strong>出力:</strong></p><pre><code>fCC
</code></pre><h3 id="-d-i-">書式指定子 <code>%d</code> および <code>%i</code> による符号付き整数の出力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt; 

int main() { 
  int found = 2015, curr = 2020; 
  printf("%d\n", found); 
  printf("%i\n", curr); 
  return 0; 
} 
</code></pre><p><strong>出力:</strong></p><pre><code>2015
2020
</code></pre><h3 id="-f-e-">書式指定子 <code>%f</code> および <code>%e</code> による浮動小数点数の出力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt;

int main() { 
  float num = 19.99; 
  printf("%f\n", num); 
  printf("%e\n", num); 
  return 0; 
}
</code></pre><p><strong>出力:</strong></p><pre><code>19.990000
1.999000e+01
</code></pre><h3 id="-o-8-">書式指定子 <code>%o</code> による 8 進符号無し整数の出力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt; 

int main() { 
  int num = 31; 
  printf("%o\n", num); 
  return 0; 
}
</code></pre><p><strong>出力:</strong></p><pre><code>37
</code></pre><h3 id="-x-16-">書式指定子 <code>%x</code> による 16 進符号無し整数の出力:</h3><pre><code class="language-c">#include &lt;stdio.h&gt; 

int main() { 
  int c = 28; 
  printf("%x\n", c); 
  return 0; 
} 
</code></pre><p><strong>出力:</strong></p><pre><code>1c
</code></pre> ]]>
                </content:encoded>
            </item>
        
    </channel>
</rss>
