中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言結構體數組同時賦值的另類用法

發布時間:2020-10-12 19:58:30 來源:腳本之家 閱讀:466 作者:Engineer-Bruce_Yang 欄目:編程語言

說到C語言結構體數組的同時賦值,許多人一想就會想到用以下的這種方法,咱們來寫一個例子:

#include <stdio.h>
struct student
{
 int a; 
 int b ; 
 int c ; 
};
struct student array1[1000] ;
int main(void)
{
 int i ;
 for(i = 0 ; i < 1000 ; i++)
 {
 array[i].a = 1 ;
 array[i].b = 2 ;
 array[i].c = 3 ;
 }
 for(i = 0 ; i < 1000 ; i++)
 {
 printf("array[%d].a:%d array[%d].b:%d array[%d].c:%d \n" ,
 i, array[i].a ,i, array[i].b ,i, array[i].c);
 }
 return 0 ;
}

這樣就可以實現對結構體數組同時賦值了。

閱讀Linux內核源代碼的時候看到了,原來C語言還有一種更少人知道的方法,使用 "..." 的形式,這種形式是指第幾個元素到第幾個元素,都是一樣的內容。這種用法在標準C上也是允許的,沒有語法錯誤,我們來看看它是怎么用的:

#include <stdio.h>
struct student
{
 int a; 
 int b ; 
 int c ; 
};
//對第0個數組到第999個結構體數組同時賦值一樣的內容 
struct student array[1000] = {
 [0 ... 999] = {
 .a = 1 ,
 .b = 2 ,
 .c = 3 ,
 }
};
int main(void)
{
 int i ; 
 //輸出賦值后的數值 
 for(i = 0 ; i < 1000 ; i++)
 {
 printf("array[%d].a:%d array[%d].b:%d array[%d].c:%d \n" ,
 i, array[i].a ,i, array[i].b ,i, array[i].c);
 }
 return 0 ;
}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對億速云的支持。如果你想了解更多相關內容請查看下面相關鏈接

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

兴安县| 板桥市| 深圳市| 南投县| 迁西县| 呼伦贝尔市| 左贡县| 宣恩县| 大同县| 昆明市| 枞阳县| 怀安县| 衡山县| 昆山市| 龙陵县| 娄烦县| 湖州市| 石阡县| 奎屯市| 江西省| 郓城县| 大新县| 蒙山县| 车险| 黄陵县| 汉阴县| 石河子市| 汤原县| 含山县| 铜山县| 太原市| 商南县| 赤壁市| 儋州市| 沧源| 九江县| 嘉义县| 方城县| 吉林省| 湄潭县| 绥芬河市|