簡體   English   中英

為什么不顯示數字“ 0”(數字,不是char)?

[英]Why the number '0' (number, not char) doesn't displaying?

問題是我無法在數組中看到0

我運行程序,看到2D數組。 但是我看不到0 (第一個元素)。

這是代碼:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    int i;
    int *Ptr;

    scanf("%d%d", &M, &N); /* Size of array. */

    Ptr = malloc(M*N*sizeof(int));

    for (i = 0; i < M * N; i++) /* Filling in. */
    {
        *(Ptr + i) = i;
    }

    for (i = 0; i < M * N; i++) /* Displaying. */
    {
        if (i % N == 0)
            printf("\n");
        printf("%2.d  ", *(Ptr + i));
    }

    return 0;
}

問題是什么? 有什么辦法可以解決?

點后的數字是精度。 如果精度為0(或不存在),則printf不會打印出0 在您的情況下,您不需要點:

printf("%2d ", ...)

更改

printf("%2.d  ", *(Ptr + i));

printf("%2d  ", *(Ptr + i));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM