最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言中全局數(shù)組和局部數(shù)組的問題

 更新時間:2012年12月09日 18:33:54   作者:  
今天同學遇到一個在C語言中全局數(shù)組和局部數(shù)組的問題,卡了許久,我也沒有第一時間看出問題,現(xiàn)在把問題梳理一下,并給出解決方案,需要的朋友可以參考下
今天同學遇到一個在C語言中全局數(shù)組和局部數(shù)組的問題,卡了許久,我也沒有第一時間看出問題,現(xiàn)在把問題梳理一下,并給出解決方案。
問題描述
在全局聲明的數(shù)組與在局部聲明的數(shù)組有著不同的效果。
首先來看一個程序:
復制代碼 代碼如下:

#include <stdio.h>
#include <stdlib.h>
#define MAX 10
char a[MAX];
int main()
{
int i;
char b[MAX];
char *c=(char *)malloc(MAX * sizeof(char));
printf("\nArray a:\n");
for(i=0;i<MAX;i++)
printf("%d ",a[i]);

printf("\nArray b:\n");
for(i=0;i<MAX;i++)
printf("%d ",b[i]);

printf("\nArray c:\n");
for(i=0;i<MAX;i++)
printf("%d ",c[i]);
printf("\nDone");
free(c);
return 1;
}

編譯運行結果:
 
程序主要功能是打印字符數(shù)組的Ascii碼??梢园l(fā)現(xiàn)全局數(shù)組a和動態(tài)生成的數(shù)組c有著相同的結果,而局部聲明的數(shù)組b確被分配了隨機的數(shù)值,也許這就是問題的所在。
解決方案:
復制代碼 代碼如下:

#include <stdio.h>
#include <stdlib.h>
#define MAX 10
char a[MAX]={0};
int main()
{
int i;
char b[MAX]={0};
char *c=(char *)malloc(MAX * sizeof(char));
printf("\nArray a:\n");
for(i=0;i<MAX;i++)
printf("%d ",a[i]);

printf("\nArray b:\n");
for(i=0;i<MAX;i++)
printf("%d ",b[i]);

printf("\nArray c:\n");
for(i=0;i<MAX;i++)
printf("%d ",c[i]);
printf("\nDone");
free(c);
return 1;
}

運行結果:
 
在數(shù)組的初始化中,假設初始化的數(shù)值個數(shù)小于數(shù)組的大小,則全部用0來填充。這里通過初始化一個值,就可以給數(shù)組一個確定的結果。
(在不同系統(tǒng)和不同的編譯器可能會出現(xiàn)不同的結果)
還有一個小問題就是C語言中空格的問題,看下面的程序。
復制代碼 代碼如下:

#include <stdio.h>
#include <stdlib.h>
#define MAX 10
int main()
{
int i;
char b[MAX]={0};
gets(b);
printf("\nArray b:\n");
for(i=0;i<MAX;i++)
printf("%d ",b[i]);
printf("\nDone");
return 1;
}

 
在這里,我輸入了" int"(三個空格+int),打印的結果如上圖。
b中前三個記錄了空格的Ascii碼,即32。
b中后面沒有使用的空間依然是0.
打完收工。

相關文章

  • QT使用QChart繪制餅圖

    QT使用QChart繪制餅圖

    在Qt中使用QChart類可以快速繪制一個圖表出來,比如折線圖、餅圖、柱狀圖等,本文就來為大家介紹一下如何利用QChart繪制簡單的餅圖吧
    2024-11-11
  • 數(shù)據(jù)結構之堆詳解

    數(shù)據(jù)結構之堆詳解

    這篇文章主要介紹了數(shù)據(jù)結構之堆詳解,本文講解了堆的基本常識堆的基本操作、堆的應用等內(nèi)容,需要的朋友可以參考下
    2014-08-08
  • C語言double和float 實例分析

    C語言double和float 實例分析

    本文主要介紹了C語言中的浮點數(shù)(float,double),并通過實例代碼進行分析比較,希望能幫助學習相關知識的同學
    2016-07-07
  • C語言文件操作函數(shù)freopen詳細解析

    C語言文件操作函數(shù)freopen詳細解析

    替換一個流,或者說重新分配文件指針,實現(xiàn)重定向。如果stream流已經(jīng)打開,則先關閉該流。如果該流已經(jīng)定向,則freopen將會清除該定向。此函數(shù)一般用于將一個指定的文件打開一個預定義的流:標準輸入、標準輸出或者標準出錯
    2013-10-10
  • 詳解C#byte數(shù)組怎么傳入C

    詳解C#byte數(shù)組怎么傳入C

    在本篇內(nèi)容里小編給大家整理了關于C#byte數(shù)組怎么傳入C的相關知識點內(nèi)容,有興趣的朋友們學習參考下。
    2019-03-03
  • C++讀寫配置項的基本操作

    C++讀寫配置項的基本操作

    這篇文章主要介紹了C++讀寫配置項的基本操作,幫助大家更好的理解和學習c++,感興趣的朋友可以了解下
    2021-01-01
  • C++實現(xiàn)LeetCode(166.分數(shù)轉循環(huán)小數(shù))

    C++實現(xiàn)LeetCode(166.分數(shù)轉循環(huán)小數(shù))

    這篇文章主要介紹了C++實現(xiàn)LeetCode(166.分數(shù)轉循環(huán)小數(shù))
    2021-07-07
  • C++11中互斥鎖的使用

    C++11中互斥鎖的使用

    本文主要介紹了C++11中互斥鎖的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-06-06
  • C語言實現(xiàn)學生信息管理系統(tǒng)(文件操作)

    C語言實現(xiàn)學生信息管理系統(tǒng)(文件操作)

    這篇文章主要介紹了C語言實現(xiàn)學生信息管理系統(tǒng),增加了文件操作,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • C++編程面向對象入門全面詳解

    C++編程面向對象入門全面詳解

    這篇文章主要為大家介紹了C++面向對象入門的全面詳解,文章較長非常全面建議收藏閱讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2021-10-10

最新評論

玛多县| 湖南省| 拉孜县| 潢川县| 凤冈县| 定南县| 珠海市| 建德市| 鲁山县| 镶黄旗| 陇西县| 新野县| 基隆市| 新兴县| 北票市| 古丈县| 富平县| 惠东县| 西贡区| 抚远县| 株洲县| 山阳县| 宝清县| 昭平县| 兴仁县| 科技| 新建县| 遵义县| 卓尼县| 嘉善县| 鄂伦春自治旗| 蓬安县| 尼玛县| 新龙县| 象州县| 金门县| 绥阳县| 昌都县| 云龙县| 西贡区| 昌邑市|