кажется такой глупой вещью, чтобы спросить, но я серьезно не знаю, почему это происходит. Может быть, что это почти 5 утра, и я все еще делаю это, но ..Почему мой printf делает это?
Он должен печатать -ca, но почему, когда я скомпилировать его, он печатает
-
CA?
вместо -ca, там ISN» t a '\ n' в любом месте. Можете ли вы, ребята, подумать о чем-нибудь логичном, что бы объяснить это?
int main(int argc, char* argv[]){
int check = 0;
char *thing = (char*)malloc(2 * sizeof(char));
strcpy(char, "CA");
some code..
do{
more code...
if(condition== 1) {
more code....
if(check == 0) {
printf("-");
check++;
}
if (some conditon != NULL){
printf("%s\n",thing);
}while(condition)
return 0;
}
Как вы ожидаете 'printf («% s \ n », вещь);' знать, сколько символов нужно печатать? –
То, что Дэвид хочет сказать, заключается в том, что ваша вещь не отменена. –
Должно быть 'char thing [] =" CA ";' Что касается новой строки, опубликуйте [Минимальный полный проверяемый пример] (http://stackoverflow.com/help/mcve), который демонстрирует проблему, а затем мы будем говорить. – user3386109