雷火电竞-中国电竞赛事及体育赛事平台

歡迎來到入門教程網!

C語言

當前位置:主頁 > 軟件編程 > C語言 >

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

來源:本站原創(chuàng)|時間:2020-01-10|欄目:C語言|點擊:

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

#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 ;
}

這樣就可以實現(xiàn)對結構體數(shù)組同時賦值了。

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

#include <stdio.h>
struct student
{
 int a; 
 int b ; 
 int c ; 
};
//對第0個數(shù)組到第999個結構體數(shù)組同時賦值一樣的內容 
struct student array[1000] = {
 [0 ... 999] = {
 .a = 1 ,
 .b = 2 ,
 .c = 3 ,
 }
};
int main(void)
{
 int i ; 
 //輸出賦值后的數(shù)值 
 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 ;
}

總結

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

上一篇:C語言實現(xiàn)模擬USB對8bit數(shù)據(jù)的NRZI編碼輸出

欄    目:C語言

下一篇:C語言數(shù)組和指針的問題一道非常值得深思的筆試題

本文標題:C語言結構體數(shù)組同時賦值的另類用法

本文地址:http://www.jygsgssxh.com/a1/Cyuyan/620.html

網頁制作CMS教程網絡編程軟件編程腳本語言數(shù)據(jù)庫服務器

如果侵犯了您的權利,請與我們聯(lián)系,我們將在24小時內進行處理、任何非本站因素導致的法律后果,本站均不負任何責任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網 版權所有