C語(yǔ)言中判斷int,long型等變量是否賦值的方法詳解
當(dāng)然,如果你不賦值給局部變量,這樣會(huì)導(dǎo)致整個(gè)程序的崩潰,因?yàn)?,它的?nèi)容被系統(tǒng)指向了垃圾內(nèi)存。
下面我們看一段代碼:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int globle_value;
int my_sum(int value1, int value2);
long my_sub(long value1, long value2);
int main(void)
{
int auto_value_int;
long auto_value_long;
auto_value_int = my_sum(15, 9);
auto_value_long = my_sub(12587, 22587);
printf("globle_value : %d\n", globle_value);
printf("auto_value_int : %d\n", auto_value_int);
printf("auto_value_long : %ld\n", auto_value_long);
system("PAUSE");
return 0;
}
int my_sum(int value1, int value2)
{
return value1 + value2;
}
long my_sub(long value1, long value2)
{
return value2 - value1;
}
說(shuō)明:
我首先定義了一個(gè)全局變量,當(dāng)然,這會(huì)由系統(tǒng)自動(dòng)初始化為0,但是兩個(gè)不同類(lèi)型的局部變量并沒(méi)有初始化,而是通過(guò)兩個(gè)函數(shù)調(diào)用賦的值??墒牵F(xiàn)在,想一個(gè)問(wèn)題,兩個(gè)函數(shù)調(diào)用是不是執(zhí)行成功了呢?如果不成功,還是沒(méi)有達(dá)到我所想要的效果,這怎么去判斷呢?
開(kāi)始,博主也是沒(méi)想到好的解決辦法,也查閱別人怎么去做,沒(méi)有太多的收獲,可是,博主想到了C 語(yǔ)言中的一個(gè)函數(shù)--sprintf ,它可以把不同類(lèi)型變量存放到字符數(shù)組中,我們之后可以判斷,字符數(shù)組是否為空就可以了。
下面是經(jīng)過(guò)修改了的代碼:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int globle_value;
int my_sum(int value1, int value2);
long my_sub(long value1, long value2);
int main(void)
{
int auto_value_int;
long auto_value_long;
char temp[20] = {0};
auto_value_int = my_sum(15, 9);
auto_value_long = my_sub(12587, 22587);
printf("globle_value : %d\n", globle_value);
sprintf(temp, "%d", auto_value_int);
if (strcmp(temp, "") != 0)
{
printf("auto_value_int : %d\n", auto_value_int);
}
sprintf(temp, "%ld", auto_value_long);
if (strcmp(temp, "") != 0)
{
printf("auto_value_long : %ld\n", auto_value_long);
}
system("PAUSE");
return 0;
}
int my_sum(int value1, int value2)
{
return value1 + value2;
}
long my_sub(long value1, long value2)
{
return value2 - value1;
}
運(yùn)行截圖如下所示:

由此,解決了問(wèn)題。
相關(guān)文章
C++?OpenCV技術(shù)實(shí)戰(zhàn)之身份證離線識(shí)別
OpenCV身份證離線識(shí)別技術(shù)的主要技術(shù)就是通過(guò)OpenCV找到身份證號(hào)碼區(qū)域,然后通過(guò)OCR進(jìn)行數(shù)字識(shí)別該區(qū)域的截圖即可得到身份證號(hào)碼。感興趣的可以了解一下2021-12-12
老生常談C語(yǔ)言動(dòng)態(tài)函數(shù)庫(kù)的制作和使用(推薦)
下面小編就為大家?guī)?lái)一篇老生常談C語(yǔ)言動(dòng)態(tài)函數(shù)庫(kù)的制作和使用(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08
一波二叉樹(shù)遍歷問(wèn)題的C++解答實(shí)例分享
這篇文章主要介紹了一波二叉樹(shù)遍歷問(wèn)題的C++解答實(shí)例分享,包括節(jié)點(diǎn)打印和轉(zhuǎn)換為鏡像等問(wèn)題的解答,需要的朋友可以參考下2016-02-02
C++簡(jiǎn)單實(shí)現(xiàn)的全排列算法示例
這篇文章主要介紹了C++簡(jiǎn)單實(shí)現(xiàn)的全排列算法,結(jié)合實(shí)例形式分析了C++排序操作的實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-07-07
C語(yǔ)言棧的表示與實(shí)現(xiàn)實(shí)例詳解
這篇文章主要介紹了C語(yǔ)言棧的表示與實(shí)現(xiàn),對(duì)于數(shù)據(jù)結(jié)構(gòu)與算法的研究有一定的借鑒價(jià)值,需要的朋友可以參考下2014-07-07
vscode實(shí)現(xiàn)本地代碼自動(dòng)同步到遠(yuǎn)程機(jī)器的步驟
這篇文章主要介紹了vscode實(shí)現(xiàn)本地代碼自動(dòng)同步到遠(yuǎn)程機(jī)器的步驟,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06
C++對(duì)象的淺復(fù)制和深復(fù)制詳解及簡(jiǎn)單實(shí)例
這篇文章主要介紹了C++對(duì)象的淺復(fù)制和深復(fù)制詳解及簡(jiǎn)單實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-04-04

