C语言中的分段错误

C语言中的分段错误,c,C,这有什么问题?上面写着分割错误。 用C写的。'%u'应该是'%u'(双引号)。C不是SQL,并且'%u'被认为是SQL 正如Erik所说,%d在您的情况下更好。printf(“%d”)-printf采用C字符串而不是字符%d是整数的正确格式说明符。指定“%u”(多字符字符常量)应为“%u”(字符数组)。char常量被错误地解释为指向随机内存的指针。请注意,如果将错误的类型(int而不是const char*)作为printf的第一个参数,则会出现错误,除非您忘记了包含或prototypeprin

这有什么问题?上面写着分割错误。
用C写的。

'%u'
应该是
'%u'
(双引号)。C不是SQL,并且
'%u'
被认为是SQL


正如Erik所说,
%d
在您的情况下更好。

printf(“%d”)
-printf采用C字符串而不是字符<代码>%d是整数的正确格式说明符。

指定“%u”(多字符字符常量)应为“%u”(字符数组)。char常量被错误地解释为指向随机内存的指针。

请注意,如果将错误的类型(
int
而不是
const char*
)作为
printf
的第一个参数,则会出现错误,除非您忘记了
包含
或prototype
printf
。由于
printf
是一个可变函数,这也会导致UB。

也使用
int main(int argc,char**argv)
!虽然在这种情况下,错误出现在哪一行是相当明显的,但请在以后的帖子中明确地包含这一信息——这会使每个人的生活更轻松(包括你自己的)。查看编译器的输出是一个好主意。我相信它已经警告过您printf()。@Ian-如果这解决了您的问题,您应该将此答案标记为正确。
void main() {
    int num;
    num = 1;
    num++;
    num = num + 9;
    printf('%u',num);
}