C語言中,變數的值進行減運算後,這個值的記憶體地址也變化了。是嗎

2021-03-27 22:04:03 字數 598 閱讀 8478

1樓:su9_踏雪無痕

記憶體地址是不會發生變化的,只是儲存在這塊內從中的值發生了改變。如果想讓記憶體地址發生變化需要對記憶體進行操作。

例如:cha a[8] = "abcde";

char *p;

p = a; //指標p指向陣列a的首地址p++; //此時用p對a的記憶體進行操作,每相加一下記憶體向後移1個byte。p指向的地址變了

,但 是 a的地址照樣沒有變

2樓:匿名使用者

不變c語言中,對變數的值進行運算,變數在記憶體的地址不會改變,改變的是地址對應該的資料。

3樓:匿名使用者

不變,只是變數記憶體中所存的內容改變,減運算後的結果(值)仍然存在原地址中。。。

4樓:匿名使用者

沒有啦,取出記憶體地址中的變數進行減運算後又把值存放到記憶體地址中。

5樓:匿名使用者

沒有變,你是不是看到的是指標。比如

int*ptr,a[10];

ptr =a;

ptr++;

這個ptr的值會變

C語言中變數經過強制型別轉換後的值會儲存到其儲存單元裡嗎

變數 只有通過賦值 才能改變 它的 值。沒有 重新 賦值,它的值是 不會 變化 版 的。例如 int a 123 double b double a 那末,a 的值權 還是 整型 123。b 的值 是 double 型 123.0 a 100 就是 a a 100 也就是 a 的新值 a 的老值 1...

C語言中,如何表示變數的n次方,C語言中,如何表示一個變數的n次方?

c語言中計算一個數的n次方可以用庫函式pow來實現。函式原型 double pow double x,double y 如下 include include intmain 注 使用pow函式時,需要將標頭檔案 include包含進原始檔中。擴充套件資料 其他方法表示一個數的n次方 include ...

C語言指標自增自減運算,c語言中指標可不可以用在自增自減運算子中

printf d,p 指向陣列首地址 printf d,p 地址先加1然後取值,也就是a 1 printf d,p 取地址p加1後的值,就是a 2 printf d,p 先取p得值,然後再地址減1,最後p指向a 1 printf d,p 先取p的值,然後p指標加1 printf d,p 直接取p的值...