当用GCC编译我的程序时,我得到以下警告:
format ‘%d’ expects type ‘int’, but argument 2 has type ‘long unsigned int
Run Code Online (Sandbox Code Playgroud)
现在只是通过玩耍我意识到%lo修复了警告.但是我真的不明白我在做什么.
是否有命名约定来获取类型的简短形式?例如,int是%d,为什么?
谢谢!
我正在Linux机器上玩GCC中的sizeof(),我发现了一些非常令人惊讶的东西.
printf ("\nsize of int = %lu\n", sizeof(int));
printf ("\nsize of int* = %lu\n", sizeof(int *));
Run Code Online (Sandbox Code Playgroud)
产量
size of int = 4
size of int* = 8
Run Code Online (Sandbox Code Playgroud)
我认为指向整数的指针的大小会比实际的整数本身小得多!
我现在正在研究嵌入式软件,我理解通过引用传递比传递值更有效(在功率方面).
如果指针的大小大于实际值,有人可以澄清为什么通过引用传递比通过值更有效.
谢谢!
有人可以解释一下如何为指向c中字符指针数组的指针正确分配内存吗?例如:
char *(*t)[];
Run Code Online (Sandbox Code Playgroud)
我尝试这样做:
*t = malloc( 5 * sizeof(char*));
Run Code Online (Sandbox Code Playgroud)
这给了我一个编译错误:
error: invalid use of array with unspecified bounds
Run Code Online (Sandbox Code Playgroud)
对此的任何帮助都会很棒!谢谢
我想知道C编译器如何处理比较运算符'=='
我希望创建一个函数(在C中),它可以在不使用==的情况下比较两件事.我认为可以通过使用按位运算符(&,|,^,>>)来完成,但我似乎无法想到如何做到这一点.
有人有想法吗?
谢谢!
我试图创建一个shell脚本来回显文件的内容,我不知道在哪里找到它.
我以为它会是这样的:
$echo | ls /* | grep file.xml
Run Code Online (Sandbox Code Playgroud)
我的文件可能在某个未知的子文件夹中,所以我试图用grep搜索它的路径.
任何有关正确语法的帮助将不胜感激!
c ×4
memory ×2
allocation ×1
comparison ×1
embedded ×1
gcc ×1
grep ×1
pipe ×1
shell ×1
types ×1