小编Man*_*anu的帖子

结构填料和包装

考虑:

struct mystruct_A
{
   char a;
   int b;
   char c;
} x;

struct mystruct_B
{
   int b;
   char a;
} y;
Run Code Online (Sandbox Code Playgroud)

结构的尺寸分别为12和8.

这些结构是填充还是包装?

什么时候进行填充或包装?

c struct structure packing padding

189
推荐指数
6
解决办法
25万
查看次数

'const struct'与'struct'有什么不同?

什么const struct意思?它有什么不同struct吗?

c syntax

42
推荐指数
2
解决办法
7万
查看次数

找到指针指向的字符串的大小

#include <stdio.h>

int main ()
{
    char *ptr = "stackoverflow"

}
Run Code Online (Sandbox Code Playgroud)

有没有办法找到ptr指向的stackoverflow的长度,因为sizeof ptr总是给出4

c

19
推荐指数
4
解决办法
7万
查看次数

16
推荐指数
1
解决办法
5万
查看次数

在不使用pragma的情况下禁用C中的结构填充

如何在不使用pragma的情况下禁用C中的结构填充?

c pragma

11
推荐指数
1
解决办法
6858
查看次数

在linux中合​​并两个文件而不重复

我有两个文件file1和file2

file1的内容是

Hello
  how
are you
when can i meet you
film??
Run Code Online (Sandbox Code Playgroud)

file2的内容是

Hello 
how 
are you
darling
when can i meet you
Run Code Online (Sandbox Code Playgroud)

我想生成一个文件,它是两个文件的组合

Hello
how
are you
darling
when can i meet you
film??
Run Code Online (Sandbox Code Playgroud)

注意:在file1最后一个文件中应该忽略第二行中的空格是否有任何内置函数在C或Linux中执行上面的工作或者是否可以编写脚本来执行此操作?

c linux shell awk

6
推荐指数
1
解决办法
199
查看次数

为指针分配内存

我通过提供不同的输入来调试两个终端中的程序,但特别是我在一个终端中看到了这个

ins (ptr=0x0, key=1, upKey=0xbffff308, newnode=0xbffff30c)
Run Code Online (Sandbox Code Playgroud)

在另一个终端

ins (ptr=0x0, key=1, upKey=0xbffff308, newnode=0xbffff30c)
Run Code Online (Sandbox Code Playgroud)

ins功能在哪里

ins(struct node *ptr, int key, int *upKey,struct node **newnode)
Run Code Online (Sandbox Code Playgroud)

如何将相同的内存位置分配给指针.我在两个不同的终端上运行相同的程序......输入不同

c pointers

5
推荐指数
2
解决办法
154
查看次数

声明头文件必不可少?

声明头文件必不可少?这段代码:

main()
{
  int i=100;

  printf("%d\n",i);
}
Run Code Online (Sandbox Code Playgroud)

似乎工作,我得到的输出是100.即使不使用stdio.h头文件.这怎么可能?

c

4
推荐指数
2
解决办法
396
查看次数

找出重复的号码

在数组[10]中,数组中有1到9的数字,其中一个数字重复(重复数也在1到9之间)如何在不使用循环的情况下找到重复的数字,并且数组可以被横向移动只有一次从上到下.

这不是作业,这是在采访中被问到的

c

4
推荐指数
2
解决办法
747
查看次数

如何撤消"git rm -r -f*"

我第一次使用git,我有一个目录,里面写着几个程序并执行了以下步骤

  1. 我做到了 git add .
  2. 然后git commit,我收到了一条消息Aborting commit due to empty commit message.
  3. 然后我想,让我在常见消息下提交一组文件.所以我想删除所有添加的文件.
  4. 所以我做了 git rm -r -f
  5. 当我这样做时,ls我丢失了所有代码.有什么方法可以让他们回来,我的愚蠢我甚至没有备份副本.

到目前为止我所遵循的事情

我用Google搜索了一些发现的命令,但是它们没有用

git stash 如果我输入这个命令我得到

致命:糟糕的修改'HEAD'致命:糟糕的修订'HEAD'致命:需要单一修订您还没有初始提交

git reset HEAD,如果我输入这个命令我得到

致命:模糊的论点'HEAD':未知的修订或路径不在工作树中.使用" - "将路径与修订分开

我真的需要把这些文件拿回来!

我创建GIT时遵循的步骤

  1. mkdir BareRepo
  2. BareRepo目录我做git init,git status,git config --bool core.bare true
  3. 然后我克隆了BareRepo git clone BareRepo/ Programs/
  4. Programs目录中我做了以上所说的所有事情

git git-rm

4
推荐指数
1
解决办法
1716
查看次数

标签 统计

c ×9

awk ×1

git ×1

git-rm ×1

linux ×1

packing ×1

padding ×1

pointers ×1

pragma ×1

shell ×1

strlen ×1

struct ×1

structure ×1

syntax ×1