没做任何修改,只是添加了一个例程代码,我这边是汇编文件报错,是不是需要对工程进行什么设置?
你添加了什么例程代码?我没有找到
您是下载的我的附件吗,我添加了一个sdk里面GPIO的例程,现在重点不在例程上,在于我解压的源码,编译有问题
我现在奇怪的问题是,我把SDK里面GPIO例程的库改成我自己编译的就可以通过编译,你的工程我就没有办法编译,所以我不知道差异在哪里
截图说明下报什么错,错误信息都不给?
Description Resource Path Location Type
cs-make: *** [fx3_sdk_1_3_4_src/sdk/firmware/src/system/cyu3entry_armcc.o] Error 1 GpioApp C/C++ Problem
bad instruction `setup device stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 130 C/C++ Problem
bad instruction `if this is a wakeup from standby,restore TCM contents.' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 129 C/C++ Problem
bad instruction `preserve8' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 133 C/C++ Problem
bad instruction `jump to toolchain initialization routine' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 131 C/C++ Problem
bad instruction `entry' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 135 C/C++ Problem
bad instruction `area CYU3P_EXCEPTION_VECTORS,CODE,READONLY' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 134 C/C++ Problem
bad instruction `__cyu3p_exception_vectors' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 138 C/C++ Problem
bad instruction `export __cyu3p_exception_vectors' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 137 C/C++ Problem
bad instruction `pickup stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 121 C/C++ Problem
bad instruction `prevent overflow' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 120 C/C++ Problem
bad instruction `enter SVC mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 123 C/C++ Problem
bad instruction `build SVC mode CPSR' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 122 C/C++ Problem
bad instruction `ensure 8-byte alignment' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 125 C/C++ Problem
bad instruction `calculate start of SVC stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 124 C/C++ Problem
bad instruction `setup memory interfaces' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 128 C/C++ Problem
bad instruction `setup SVC stack pointer' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 126 C/C++ Problem
bad instruction `general purpose jump function. No updates to stack.' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 163 C/C++ Problem
bad instruction `export CyU3PJumpToAddress' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 164 C/C++ Problem
bad instruction `cyu3pjumptoaddress' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 165 C/C++ Problem
bad instruction `end' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 168 C/C++ Problem
bad instruction `the following exceptions are not expected to occur on this setup.' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 148 C/C++ Problem
bad instruction `the handlers are left in place for completeness.' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 149 C/C++ Problem
bad instruction `export __CyU3PSWIHandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 151 C/C++ Problem
bad instruction `__cyu3pswihandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 152 C/C++ Problem
bad instruction `export __CyU3PReservedHandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 155 C/C++ Problem
bad instruction `__cyu3preservedhandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 156 C/C++ Problem
bad instruction `export __CyU3PFiqHandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 159 C/C++ Problem
bad instruction `__cyu3pfiqhandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 160 C/C++ Problem
bad instruction `import CyU3PUndefinedHandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 48 C/C++ Problem
bad instruction `import CyU3PPrefetchHandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 49 C/C++ Problem
bad instruction `import CyU3PAbortHandler' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 50 C/C++ Problem
bad instruction `fx3 firmware framework initialization.' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 52 C/C++ Problem
bad instruction `import CyU3PToolChainInit' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 43 C/C++ Problem
bad instruction `import CyU3PSysSetupMMU' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 44 C/C++ Problem
bad instruction `import CyU3PSysCheckBootState' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 45 C/C++ Problem
bad instruction `the exception vectors imported below are to be defined by the application firmware.' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 47 C/C++ Problem
suggest parentheses around arithmetic in operand of '|' [-Wparentheses] cyu3device.c /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 206 C/C++ Problem
bad instruction `load the stack base address' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 59 C/C++ Problem
ignoring #pragma arm [-Wunknown-pragmas] cyu3device.c /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 34 C/C++ Problem
bad instruction `prevent overflow' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 60 C/C++ Problem
bad instruction `pickup stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 62 C/C++ Problem
bad instruction `build SYS mode CPSR' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 63 C/C++ Problem
bad instruction `preserve8' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 54 C/C++ Problem
bad instruction `area FX3FWINIT,CODE,READONLY' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 55 C/C++ Problem
bad instruction `export CyU3PSetupStackPtrs' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 57 C/C++ Problem
bad instruction `cyu3psetupstackptrs' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 58 C/C++ Problem
bad instruction `clear SYS fp' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 69 C/C++ Problem
bad instruction `clear SYS mode sl' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 68 C/C++ Problem
bad instruction `build ABT mode CPSR' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 72 C/C++ Problem
bad instruction `pickup stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 71 C/C++ Problem
bad instruction `calculate start of SYS stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 65 C/C++ Problem
bad instruction `enter SYS mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 64 C/C++ Problem
bad instruction `setup SYS stack pointer' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 67 C/C++ Problem
bad instruction `ensure 8-byte alignment' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 66 C/C++ Problem
bad instruction `clear ABT fp' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 78 C/C++ Problem
bad instruction `clear ABT mode sl' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 77 C/C++ Problem
bad instruction `build UND mode CPSR' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 81 C/C++ Problem
bad instruction `pickup stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 80 C/C++ Problem
bad instruction `calculate start of ABT stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 74 C/C++ Problem
bad instruction `enter ABT mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 73 C/C++ Problem
bad instruction `setup ABT stack pointer' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 76 C/C++ Problem
bad instruction `ensure 8-byte alignment' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 75 C/C++ Problem
bad instruction `pickup stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 89 C/C++ Problem
bad instruction `build FIQ mode CPSR' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 90 C/C++ Problem
bad instruction `clear UND mode sl' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 86 C/C++ Problem
bad instruction `clear UND fp' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 87 C/C++ Problem
bad instruction `ensure 8-byte alignment' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 84 C/C++ Problem
bad instruction `setup UND stack pointer' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 85 C/C++ Problem
bad instruction `enter UND mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 82 C/C++ Problem
bad instruction `calculate start of UND stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 83 C/C++ Problem
bad instruction `pickup IRQ stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 98 C/C++ Problem
bad instruction `build IRQ mode CPSR' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 99 C/C++ Problem
bad instruction `clear sl' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 95 C/C++ Problem
bad instruction `clear fp' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 96 C/C++ Problem
bad instruction `ensure 8-byte alignment' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 93 C/C++ Problem
bad instruction `setup FIQ stack pointer' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 94 C/C++ Problem
bad instruction `enter FIQ mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 91 C/C++ Problem
bad instruction `calculate start of FIQ stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 92 C/C++ Problem
bad instruction `calculate start of SVC stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 108 C/C++ Problem
bad instruction `enter SVC mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 107 C/C++ Problem
bad instruction `build SVC mode CPSR' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 106 C/C++ Problem
bad instruction `pickup System stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 105 C/C++ Problem
bad instruction `setup IRQ stack pointer' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 103 C/C++ Problem
bad instruction `ensure 8-byte alignment' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 102 C/C++ Problem
bad instruction `calculate start of IRQ stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 101 C/C++ Problem
bad instruction `enter IRQ mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 100 C/C++ Problem
bad instruction `initial stack area' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 119 C/C++ Problem
bad instruction `disable all interrupts' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 117 C/C++ Problem
bad instruction `mask for clearing all interrupts' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 116 C/C++ Problem
bad instruction `vic INT disable address' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 115 C/C++ Problem
bad instruction `cyu3pfirmwareentry' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 114 C/C++ Problem
bad instruction `export CyU3PFirmwareEntry' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 113 C/C++ Problem
bad instruction `setup SVC stack pointer' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 110 C/C++ Problem
bad instruction `ensure 8-byte alignment' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 109 C/C++ Problem
bad instruction `cy_u3p_vic_address_offset EQU 0xFFFFFEE0' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 21 C/C++ Problem
bad instruction `cypress FX3 Firmware Entry code(cyu3entry_armcc.S)' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 1 C/C++ Problem
bad instruction `cy_u3p_tmp_stack_base EQU 0x40001000' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 25 C/C++ Problem
bad instruction `free area used for temporary stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 25 C/C++ Problem
bad instruction `cy_u3p_vic_int_clear_address EQU 0xFFFFF014' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 22 C/C++ Problem
bad instruction `cy_u3p_int_clear_mask EQU 0xFFFFFFFF' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 23 C/C++ Problem
bad instruction `cy_u3p_stack_base EQU 0x10000000' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 28 C/C++ Problem
bad instruction `d-TCM area(8KB)' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 28 C/C++ Problem
bad instruction `cy_u3p_tmp_stack_size EQU 0x1000' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 26 C/C++ Problem
bad instruction `only SVC stack' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 26 C/C++ Problem
bad instruction `cy_u3p_fiq_stack_size EQU 0x0200' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 30 C/C++ Problem
bad instruction `fiq stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 30 C/C++ Problem
bad instruction `cy_u3p_svc_stack_size EQU 0x1000' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 29 C/C++ Problem
garbage following instruction -- `svc stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 29 C/C++ Problem
bad instruction `cy_u3p_sys_stack_size EQU 0x0800' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 32 C/C++ Problem
bad instruction `sys stack size(used for nested interrupts)' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 32 C/C++ Problem
bad instruction `cy_u3p_irq_stack_size EQU 0x0400' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 31 C/C++ Problem
bad instruction `irq stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 31 C/C++ Problem
bad instruction `und stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 34 C/C++ Problem
bad instruction `cy_u3p_und_stack_size EQU 0x0100' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 34 C/C++ Problem
bad instruction `abt stack size' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 33 C/C++ Problem
bad instruction `cy_u3p_abt_stack_size EQU 0x0100' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 33 C/C++ Problem
bad instruction `disable Interrupts+IRQ mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 37 C/C++ Problem
bad instruction `arm_irq_mode EQU 0xD2' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 37 C/C++ Problem
bad instruction `disable Interrupts+FIQ mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 36 C/C++ Problem
bad instruction `arm_fiq_mode EQU 0xD1' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 36 C/C++ Problem
bad instruction `disable Interrupts+ABT mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 39 C/C++ Problem
bad instruction `arm_abt_mode EQU 0xD7' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 39 C/C++ Problem
bad instruction `disable Interrupts+SVC mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 38 C/C++ Problem
bad instruction `arm_svc_mode EQU 0xD3' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 38 C/C++ Problem
bad instruction `disable Interrupts+SYS mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 41 C/C++ Problem
bad instruction `arm_sys_mode EQU 0xDF' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 41 C/C++ Problem
bad instruction `disable Interrupts+UND mode' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 40 C/C++ Problem
bad instruction `arm_und_mode EQU 0xDB' cyu3entry_armcc.S /GpioApp/fx3_sdk_1_3_4_src/sdk/firmware/src/system line 40 C/C++ Problem