【发布时间】:2014-12-16 16:33:05
【问题描述】:
我正在编写一个小 C 程序,想知道为什么我在控制台中的输出是“0”、“0” [...]?我期望的输出是“ab”,“ac”,[...]。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[])
{
int i;
int j;
char string[] = "abc";
char output[8];
int length = size(&string[0]);
for(i=0; i<length; i++) {
for(j=0; j<length; j++){
char a = string[i];
strcat(output, &a);
char b = string[j];
strcat(output, &b);
printf("%c\n", output);
}
}
return 0;
}
【问题讨论】:
-
你想要
%s,而不是%c。请使用-Wall编译以捕获此类错误。 -
感谢您的回答。但现在它给了我: 8a♥aa♥ 8a♥aa♥a♥ba♥ 8a♥aa♥a♥ba♥a♥ca♥ 8a♥aa♥a♥ba♥a♥ca♥☺♥♥ 8a♥aa♥ a♥ba♥a♥ca♥c♥ 8a♥aa♥a♥ba♥a♥ca♥a♥
-
@askdagee 这是很多♥爱♥。别害怕,现在是圣诞节。
-
hahahahahaha :D 只是想分享爱;)
-
你需要初始化输出 - output[0] = 0;
标签: c console-application strcat