回答編集履歴
1
VC++ x86 のコンパイル結果を追加
    
        answer	
    CHANGED
    
    | 
         @@ -58,4 +58,61 @@ 
     | 
|
| 
       58 
58 
     | 
    
         
             
            また、
         
     | 
| 
       59 
59 
     | 
    
         
             
            testB[0] は testB[0][0] のアドレスに変換されますが、
         
     | 
| 
       60 
60 
     | 
    
         
             
            testB[1] は testB[1][0] のアドレスに、そして、
         
     | 
| 
       61 
     | 
    
         
            -
            testB[2] は testB[2][0] のアドレスに変換されます。
         
     | 
| 
      
 61 
     | 
    
         
            +
            testB[2] は testB[2][0] のアドレスに変換されます。
         
     | 
| 
      
 62 
     | 
    
         
            +
             
     | 
| 
      
 63 
     | 
    
         
            +
            **追記**
         
     | 
| 
      
 64 
     | 
    
         
            +
            Visual C++ の 32ビット版で -FAオプションでコンパイルすると、
         
     | 
| 
      
 65 
     | 
    
         
            +
            ```
         
     | 
| 
      
 66 
     | 
    
         
            +
            _DATA   SEGMENT
         
     | 
| 
      
 67 
     | 
    
         
            +
            COMM    _testA:DWORD:05H
         
     | 
| 
      
 68 
     | 
    
         
            +
            COMM    _testB:DWORD:06H
         
     | 
| 
      
 69 
     | 
    
         
            +
            _DATA   ENDS
         
     | 
| 
      
 70 
     | 
    
         
            +
            PUBLIC  _main
         
     | 
| 
      
 71 
     | 
    
         
            +
            EXTRN   _f:PROC
         
     | 
| 
      
 72 
     | 
    
         
            +
            EXTRN   _g:PROC
         
     | 
| 
      
 73 
     | 
    
         
            +
            EXTRN   @__security_check_cookie@4:PROC
         
     | 
| 
      
 74 
     | 
    
         
            +
            EXTRN   ___security_cookie:DWORD
         
     | 
| 
      
 75 
     | 
    
         
            +
            ; Function compile flags: /Odtp
         
     | 
| 
      
 76 
     | 
    
         
            +
            _TEXT   SEGMENT
         
     | 
| 
      
 77 
     | 
    
         
            +
            _b$ = -48                                               ; size = 24
         
     | 
| 
      
 78 
     | 
    
         
            +
            _a$ = -24                                               ; size = 20
         
     | 
| 
      
 79 
     | 
    
         
            +
            __$ArrayPad$ = -4                                       ; size = 4
         
     | 
| 
      
 80 
     | 
    
         
            +
            _main   PROC
         
     | 
| 
      
 81 
     | 
    
         
            +
            ; File c:\tmp\c\a.c
         
     | 
| 
      
 82 
     | 
    
         
            +
            ; Line 10
         
     | 
| 
      
 83 
     | 
    
         
            +
                    push    ebp
         
     | 
| 
      
 84 
     | 
    
         
            +
                    mov     ebp, esp
         
     | 
| 
      
 85 
     | 
    
         
            +
                    sub     esp, 48                                 ; 00000030H
         
     | 
| 
      
 86 
     | 
    
         
            +
                    mov     eax, DWORD PTR ___security_cookie
         
     | 
| 
      
 87 
     | 
    
         
            +
                    xor     eax, ebp
         
     | 
| 
      
 88 
     | 
    
         
            +
                    mov     DWORD PTR __$ArrayPad$[ebp], eax
         
     | 
| 
      
 89 
     | 
    
         
            +
            ; Line 13
         
     | 
| 
      
 90 
     | 
    
         
            +
                    push    OFFSET _testA
         
     | 
| 
      
 91 
     | 
    
         
            +
                    call    _f
         
     | 
| 
      
 92 
     | 
    
         
            +
                    add     esp, 4
         
     | 
| 
      
 93 
     | 
    
         
            +
            ; Line 14
         
     | 
| 
      
 94 
     | 
    
         
            +
                    push    OFFSET _testB
         
     | 
| 
      
 95 
     | 
    
         
            +
                    call    _g
         
     | 
| 
      
 96 
     | 
    
         
            +
                    add     esp, 4
         
     | 
| 
      
 97 
     | 
    
         
            +
            ; Line 15
         
     | 
| 
      
 98 
     | 
    
         
            +
                    lea     eax, DWORD PTR _a$[ebp]
         
     | 
| 
      
 99 
     | 
    
         
            +
                    push    eax
         
     | 
| 
      
 100 
     | 
    
         
            +
                    call    _f
         
     | 
| 
      
 101 
     | 
    
         
            +
                    add     esp, 4
         
     | 
| 
      
 102 
     | 
    
         
            +
            ; Line 16
         
     | 
| 
      
 103 
     | 
    
         
            +
                    lea     ecx, DWORD PTR _b$[ebp]
         
     | 
| 
      
 104 
     | 
    
         
            +
                    push    ecx
         
     | 
| 
      
 105 
     | 
    
         
            +
                    call    _g
         
     | 
| 
      
 106 
     | 
    
         
            +
                    add     esp, 4
         
     | 
| 
      
 107 
     | 
    
         
            +
            ; Line 17
         
     | 
| 
      
 108 
     | 
    
         
            +
                    xor     eax, eax
         
     | 
| 
      
 109 
     | 
    
         
            +
                    mov     ecx, DWORD PTR __$ArrayPad$[ebp]
         
     | 
| 
      
 110 
     | 
    
         
            +
                    xor     ecx, ebp
         
     | 
| 
      
 111 
     | 
    
         
            +
                    call    @__security_check_cookie@4
         
     | 
| 
      
 112 
     | 
    
         
            +
                    mov     esp, ebp
         
     | 
| 
      
 113 
     | 
    
         
            +
                    pop     ebp
         
     | 
| 
      
 114 
     | 
    
         
            +
                    ret     0
         
     | 
| 
      
 115 
     | 
    
         
            +
            _main   ENDP
         
     | 
| 
      
 116 
     | 
    
         
            +
            _TEXT   ENDS
         
     | 
| 
      
 117 
     | 
    
         
            +
            END
         
     | 
| 
      
 118 
     | 
    
         
            +
            ```
         
     |