如何跟全域性變數動態賦值,如何跟一個全域性變數動態賦值

時間 2021-06-07 07:03:46

1樓:匿名使用者

在呼叫一個jquery的ajax方法時我們有時會需要該方法返回一個值或者給某個全域性變數賦值,可是我們發現程式執行完後並沒有獲取到我們想要的值,這時很有可能是因為你用的是ajax的非同步呼叫async:true(預設情況),如:

function managecommenttext(text)})return result;

以上方法是ajax的同步呼叫,只有在獲取到了data值並賦值給result以後才會返回result完成該方法的呼叫。若設為async:true,

則會未等到獲取data值就已經返回了result。

另一個解決辦法就是將你的**直接寫到success方法裡。(根據你的業務並不是所有的都可以直接寫到success裡的)。

2樓:匿名使用者

:多個檔案使用了static修飾的同名變數,並不是共用一個變數,樓主去看看static在變數前和函式前的作用吧。你自己說了(靜態全域性變數的作用域是定義了該變數的原始檔),也就是該原始檔是獨享自己的靜態全域性變數的,相當於原始檔隱藏這個靜態全域性

c語言中 給全域性變數用表示式賦值的問題!~~

3樓:匿名使用者

變數初bai始化賦值時必須是du常量,不能是變數zhi.

所以你可以先在初始化定義dao

uint c=0;

之後在程式裡給回c賦值

c=a*b;

或者 #define uint unsigned int#define a 10

#define b 3

uint c=(a*b);

只能答這樣....

給分吧.哈哈.

4樓:高金山

可以這麼

寫:bai

#define uint unsigned int#define a 10

const uint b=3; /////////////注意,這裡du加了const,把b賦值為zhi3,並且不dao可改變,它需要在c=a*b之前

uint c=a*b;

int main

也可以內這麼寫:容

#define uint unsigned int#define a 10

uint b=3; /////////////b是全域性變數,也可以放在main函式裡面,作為區域性變數

uint c;

int main

總結:1、如果用常量給全域性變數賦值,可以在宣告全域性變數的時候,就對其賦值。

2、如果要用變數給全域性變數賦值,賦值語句,必須寫在程式裡面。

5樓:皓

#define uint unsigned int#define a 10

#define b 3

uint b=b;

uint c=a*b;

6樓:匿名使用者

uint c; 然後再main裡面寫 c= a*b;

c語言裡不能用變數初始化。

當然c99標準裡是可以的,不過多數編譯器還不支援

7樓:匿名使用者

1.全域性變數(包括靜bai態內部變數)du的初始化是在編譯zhi階段進行dao,與編譯預處理內(#define a 10 )的處理容

過程在同一階段,衝突。

#include

#define uint unsigned int#define a 10

uint b=3;

int main()

; for(i = 0; i < 7; i++)return 0;

} 2.動態變數的處理過程在執行階段,uint c=a*b;沒問題。

#include

#define uint unsigned int#define a 10

uint b=3;

int main()

; for(i = 0; i < 7; i++)return 0;}

8樓:匿名使用者

將c定義為巨集,bai滿足樓主的要求,輸出結du果如下zhi:

30 60

press any key to continue程式如下:dao

#include

#define a 10

#define unit unsigned intunit b=3;

#define c a*b

void main()

如果不用巨集,直接用uint c=a*b;兩次結果都專為30,不變,不是想要的屬

9樓:

正確應該 寫 typedef unsigned uint;

----------------------------------------

#include

#include

typedef unsigned uint;

#define a 10

uint b=3;

uint c;

void main()